来自Rails / Rspec,我习惯于能够管理类似这样的测试:
setup { //stuff for all tests goes here }
tests for "foo" method
setup { stuff specific to foo method here }
test_foo_1 { ... }
test_foo_2 { ... }
end
tests for "bar" method
setup { // stuff specific to bar method here }
test_bar_1
end
因此,文件中的所有测试都会运行一些设置,然后对于某些测试,只有适用于这些测试的附加设置。
我了解setUp
和tearDown
方法;我试图在这里做的事情是将因子设置代码应用于,例如,该文件的20个测试中的5个,但对于其他15个测试是不必要的,甚至是有害的。
在为iOS构建时,OCUnit中的组织是否可行?我现在正在考虑的另一种方法是定义一些额外的设置方法,并亲自从相应的测试中调用它们。
答案 0 :(得分:0)
我认为你的意思是OCUnit
(我找不到任何叫做OCTest的东西)。如果是这种情况,那么您拥有从setUp
继承的tearDown
和SenTestCase
方法(OCUnit的基类)。
从这篇文章:http://meandmark.com/blog/2012/05/introduction-to-unit-testing-with-ocunit/
setUp:
和tearDown:
方法
可以帮助您进行单元测试的两种可选方法是setUp:
和tearDown:
。如果在运行多个测试之前要执行初始化代码,则可以将该代码放在setUp:
方法中以删除测试中的重复代码。 tearDown:
方法包含清理代码。使用tearDown:
方法的一个常见情况是释放您在setUp:
方法中分配的所有内存。
OCUnit
在运行每个测试之前调用setUp:
方法,并在运行每个测试后调用tearDown:
方法。如果您的单元测试类有20个测试,则OCUnit
会调用setUp:
和tearDown:
20次。
答案 1 :(得分:0)