我有一个带有可选类型属性(静态)的类。我开始使用这个课时设置了这个。显然,当程序首次启动时,该属性没有任何价值。
我的问题是关于测试。我希望在每次测试开始时对类进行初始化(即类型属性设置为没有值)。但是,似乎该类在所有测试开始时都会启动一次,因此type属性在所有测试中都具有相同的值,这不是我想要的。
测试中的类初始化有哪些规则?有什么方法可以强迫我的班级重新安排"?
谢谢,
儒略
答案 0 :(得分:1)
正如您所注意到的,测试用例中的静态属性在所有测试中都是持久的。但是,XCTestCase
有两组方法可以覆盖以自定义此方法,称为setUp()
和tearDown()
。这有点令人困惑,因为每个都有相同名称的类和实例方法;覆盖类方法以使某些事情只发生一次,并覆盖实例方法以在每次单独测试之前或之后发生某些事情。在您的情况下,覆盖setUp()
的实例方法版本并重置您的属性可能最有意义。