在使用单元测试创建新项目时,Xcode将构建配置设置为Test for Test方案(与Run方案相同).
我应该区分Run(Command-R)和Test(Command-U)方案吗?
即,我应该创建一个名为Test的新构建配置,向它添加预处理器宏TEST = 1,并将其用作测试方案的构建配置吗?或者,我应该将Run&Test作为Debug进行保存吗?
我来自Ruby/Rails背景,您通常拥有测试,开发和生产环境.在我看来,Debug就像开发一样,Release就像生产一样,但是我们错过了一个测试,这就是我认为添加Test可能有意义的原因.
评论?意见?建议?
我特意问这个,因为我想为Test编译一些东西:
#ifdef TEST
// Do something when I test.
#endif
Run Code Online (Sandbox Code Playgroud)
如果我也为Debug编译它,我认为这不重要.所以,我真的可以做到:
#ifdef DEBUG
// Do something when I run or test.
#endif
Run Code Online (Sandbox Code Playgroud)
但是,我真的只打算在现在进行测试.所以,这就是为什么我认为我应该区分调试和测试,但我想知道为什么Xcode默认不为你做那个?Apple认为你不应该区分它们吗?
我一直在寻找一种方法来使用SenTestingKit在我的客户端代码和服务器之间进行一些集成测试.我没有运气.似乎一旦代码在方法中运行,对象就会被破坏.这意味着任何异步响应都不会调用选择器.
问题:
仅供参考,我正在运行测试服务器,我知道预期的结果.
我已经做了很多谷歌搜索,但没有看到这种或那样的证据.我相信其他人也会感兴趣.
我是否需要特殊的库,或者我可以创建一个巨大的类来试图实例化我的项目的每个对象并测试那里的所有方法?这在理论上是怎么做的?
我们想在我们的iOS应用程序中集成测试套件.总而言之,这个应用程序正在使用Web服务,在设备上保存文件并具有一些复杂的导航部件.要求: - 使用Jenkins运行测试套件 - 能够在一组设备和iOS版本上启动测试套件 - 我们并不明确需要非开发人员可读的东西,如Calabash建议
我们正在考虑进行一些工作流测试(从一个屏幕到另一个屏幕的交互)和单元测试.我们google了一下,但文章通常至少2年,这就像移动世界的旧石器时代.但是,它仍然提供了一些不错的第一输入.
对于单元测试,我们考虑的是:
对于工作流测试,我们考虑的是:
关于所有提到的要求,是否有人看到任何建议选择一个框架或另一个(或另一个命题)?
感谢您的任何反馈.
ps:顺便说一下,我们在这个主题上发现的一些有趣的文章可以提供帮助:http : //blog.lesspainful.com/2012/03/07/Calabash-iOS/ http://iosunittesting.com/faq/
有没有人知道任何允许使用OCUnit测试异步代码的现有库?我正在考虑类似GHAsyncTestCase但是从中传递的东西SenTestCase.
我问,因为如果我找不到任何我将要移植GHAsyncTestCase到OCUnit,但我不想复制其他人已完成的工作.
我最近已经介绍了BDD的概念,并且正在我正在研究的Web系统上使用SpecFlow.我想在我的业余时间使用BDD和我正在研究的辅助项目,创建一个iPhone应用程序.
在阅读网上的文章和问题后:iOS测试/规格TDD/BDD和集成与验收测试我决定在本周末研究iCuke,因为它似乎是我可以选择的最佳选择,但是看起来该项目目前还没有被维护?
我的问题是,是否有人知道该项目是否仍在维护?如果不是,它目前处于稳定和有用的版本?或者有人知道正在维护的任何其他叉子吗?例如,我发现这篇博客文章(cucumber-tests-on-iphoneipad)只是想知道是否有人可能提供更多功能或定期更新,我应该在本周末进入iCuke之前使用.
提前致谢!
任何意见上的路要走的XCode 4关于单元测试出SenTestingKit的(在inbuild单元测试框架用的XCode 4)和GHUnit?特别是:
随着XCode 4中单元测试的明显改进,这是否意味着使用GHUnit运行没有什么大的好处?
或者,是否有一些集成优势可以使用XCode的单元测试框架(SenTestingKit)而不是GHUnit来实现平滑的开发过程?
因此,我一直在努力寻找适用于iOS4和Xcode4的可靠BDD替代方案,但是很久以前所有东西都要么已经被废弃,要么已经完成了工作,而是相当混乱.我发现最好的解决方案被称为雪松(主要文章有一个链接到最近更新的项目跟踪器),但它与Xcode4涉及凌乱解决一些问题,如注意这里.有谁知道更好的解决方案?谢谢!
编辑:我决定使用OCUnit并将BDD语法转换为测试名称.这不是我理想的解决方案,特别是因为所有测试名称都必须以"test"(ERRGGHH !!!)为前缀,但我根本无法让Cedar为我的生活工作.OCHamcrest(一个流行的匹配库)使得这个MUCH更容易忍受,但允许UI测试的东西,不能直接编译到你的代码中,是在Objective-C中,并且可以在Xcode中使用仍然绝对是美味的.