我们想在我们的iOS应用程序中集成测试套件.总而言之,这个应用程序正在使用Web服务,在设备上保存文件并具有一些复杂的导航部件.要求:
– 使用Jenkins运行测试套件
– 能够在一组设备和iOS版本上启动测试套件
– 我们并不明确需要像Calabash建议的非开发者可读的东西
– 使用Jenkins运行测试套件
– 能够在一组设备和iOS版本上启动测试套件
– 我们并不明确需要像Calabash建议的非开发者可读的东西
我们正在考虑进行一些工作流测试(从一个屏幕到另一个屏幕的交互)和单元测试.
我们搜索了一下,但文章往往至少2年,这就像移动世界的旧石器时代.但是,它仍然提供了一些不错的第一输入.
对于单元测试,我们考虑的是:
> GHUnit
> XCTest
>奇异果
对于工作流测试,我们考虑的是:
>西葫芦
>葫芦
关于所有提到的要求,是否有人看到任何建议选择一个框架或另一个(或另一个命题)?
感谢您的任何反馈.
ps:顺便说一句,我们在这个主题上找到的一些有趣的文章可以提供帮助:
http://blog.lesspainful.com/2012/03/07/Calabash-iOS/
http://iosunittesting.com/faq/
解决方法
我推荐使用Kiwi进行单元测试,原因如下:
>它支持嵌套的上下文,每个上下文都有自己的设置和拆卸块.这使您的测试更加干燥. XCTest只有一个setup和teardown方法,用于文件中的所有测试.使用Kiwi的嵌套上下文,您可以根据定义上下文的方式,在某些但不是所有测试之前执行设置代码.
> Kiwi在需要时非常支持模拟/存根依赖项.我发现它比OCMock更强大(如果你忘了调用-stopMocking,那么在测试之后,OCMock的模拟类方法会被困住,而Kiwi总是确保在每次测试后都要拆掉模拟的类方法).
我在工作流程/应用程序测试方面没有经验,但我计划最终查看KIF和UIAutomation.
我强烈建议您查看iOS Tests/Specs TDD/BDD and Integration & Acceptance Testing以获得更全面的测试库讨论.