什么是开始使用 OCUnit 进行 iPhone 单元测试的好教程?
Posted
技术标签:
【中文标题】什么是开始使用 OCUnit 进行 iPhone 单元测试的好教程?【英文标题】:What is a good tutorial for getting started with iPhone unit testing using OCUnit? 【发布时间】:2010-09-24 11:02:45 【问题描述】:我试图让 OCUnit 对我的项目做任何事情,但我失败了 :-( 有什么好的教程可以让它工作吗?我发现的所有东西都说明了一些不同的东西,它们都非常复杂......
我尝试的是例如
-
设置单元测试目标
将我的目标添加为依赖项
将 xxTest.m 添加到我的单元目标并编写如下测试用例:
代码:
#import <SenTestingKit/SenTestingKit.h>
@interface XTest : SenTestCase
@end
@implementation XTest
- (void)testAuthentication
STFail(@"fail");
@结束
结果是,构建成功......我必须做什么才能让单元测试工作?
【问题讨论】:
【参考方案1】:我在iTunes U 我的 iPhone 开发课程的“测试”课程视频中演示了单元测试的设置以及新的 UI 自动化界面测试工具。来自last semester's class 的“单元测试”会议视频也对此进行了详细探讨。
可以在here 找到我上学期单元测试的课程笔记。我创建了一个小示例应用程序来说明单元测试的使用,源代码可从here 下载。
我也强烈推荐 iDeveloper.tv 上的Graham Lee's course on test-driven development for Cocoa。您确实必须为这些视频付费,但它们非常值得为那里提供的材料质量付出代价。我通过观看他们学到了很多技巧。
【讨论】:
感谢您的样品 - 它们很棒! 为您的截屏视频 +1,为引用 Graham 的截屏视频为道德 +1。他们很好。【参考方案2】:之前有人问过这个问题:What is the best way to unit test Objective-C code?
您需要的所有信息都可以在这里找到:http://developer.apple.com/tools/unittest.html
Google 为 iPhone 开发人员提供了一个有用的代码库,其中还包括一个替代测试框架。有些人比 Xcode 中包含的 OCUnit 更喜欢它:http://code.google.com/p/google-toolbox-for-mac/wiki/iPhoneUnitTesting
【讨论】:
这并不能完全回答我的问题 - 我需要一个教程如何让 OCUnit for iPhone 工作 - 它对我没有用:-( @RRZ Europe - 我建议阅读 Chris Hanson 的文章,这些文章与该问题的已接受答案相关联。它们对 Mac 和 iPhone 的单元测试提供了非常详细的介绍。 我还通过查看您的示例发现了我的问题 - 我已将目标设置为设备,然后构建将成功,当我将其设置为模拟器时,STFail 等将正确地导致测试失败!以上是关于什么是开始使用 OCUnit 进行 iPhone 单元测试的好教程?的主要内容,如果未能解决你的问题,请参考以下文章
OCUnit 是不是允许在 iPhone 模拟器上运行应用程序测试?
OCUnit for iPhone App - 将所有 .m 文件设置为 UnitTest 目标的一部分