2014-07-11 110 views
15

从我所看到的看来,Xcode按顺序运行来自给定TestCase的测试,但是并行运行不同的TestCase。如何在Xcode 6 beta3中按顺序运行测试

是否可以配置项目/目标以便所有测试顺序运行?例如,这对运行影响其他测试的副作用的各种集成测试会很有用。 (例如,访问相同的数据库表)

编辑:清除一些混淆:我不是说强迫测试的特定顺序,而是确保测试不会互相干扰。

感谢

+4

也许,但依靠测试A运行测试B之前运行通常是一个坏主意。 – trojanfoe

+0

让我改正:我并不是说在执行B之前重新使用A的输出。我正在讨论确保A和B互不干扰(例如,因为它们使用公共数据库表,例如) –

+3

我明白了。每个测试都应该是独立的,需要在运行之前按照他们喜欢的方式设置测试环境。这使得它们更加灵活,如果您正在修复该区域的某些东西,您可以重复运行一次测试。 – trojanfoe

回答

1

如果您需要您的对象具有一致的测试起始状态,我会建议将调用添加到测试类的setUp方法。在测试课中的每个测试之前调用setUp。

如果你需要你的套件以特定的顺序运行,这听起来像你没有单元测试并正在运行集成测试。您可以尝试使用setUp来初始化较低级别的对象。如果您只对高级课程的行为感兴趣,请尝试模仿。 OCMock框架可用于Objective-C。

相关问题