使用xcode开发很长一段时间了,可是并没有使用其中支持的单元测试的功能,所以特别留意了一下使用单元测试的方式。
l iPhone从SDK3.0开始直接支持单元测试,可以创建Unit test bundle形式的target。方便了单元测试代码的编写。
l 还有一个是用google-toolbox-for-mac中带的iPhone Unit Test 框架,其实此框架也是基于OCUnit库,但是区别是google-toolbox-for-mac添加了一部分自己的代码从而实现有限的UI测试。
在Xcode中支持两种形式的单元测试:Logic Tests和Application Tests。
n 其中Logic Tests主要测试程序静态的函数逻辑功能,在程序的编译(Build)阶段进行,并且只能在模拟器中使用。
n 而Application Tests在程序的运行(Run)阶段进行,可以更全面的测试程序运行的一些状态功能,包括AppDelegate,Xib和viewController等的加载和程序启动后的一些功能,并且不能在模拟器中使用而只能在真机上使用。
1:测试环境创建
添加测试target到工程
记得添加SenTestingKit.framework到测试的target中,这样才能支持测试
这是一个从SenTestCase继承的class,测试代码在里面实现。
2.编写测试函数
测试函数的结构为
- (void) test<test_case_name> {
... // Set up, call test-case subject API.
ST... // Report pass/fail to testing framework.
... // Tear down.
}
函数命名以test为前缀,并且返回值为void,不带参数。
其中Set Up和Tear down可以单独拿出来写两个函数
- (void) setUp {
test_subject = [[MyClass new] retain];
STAssertNotNil(test_subject, @"Could not create test subject.");
}
- (void) tearDown {
[test_subject release];
}
这样在调用测试函数之前会自动调用setUp 函数,之后会自动调用tearDown 函数。当然,如何写出好的测试代码,这个还需要进一步的学习。
准确的说Test Cases不需要运行,编译的时候就运行了。尝试 Build Unit Test Target, 你会直接得到一个错误,就像编译错误一样显示在Xcode里面。可以在App的Target加上Unit Test的denpendency, 这样,每次Build and Go的时候Test Cases都会运行一次,如果有错,马上会停下来,显示错误。
分享到:
相关推荐
单元测试,现在已经成为所有软件开发人员必做的功课。当然,如果我们只是写一些书本上的小练习,我们确实没有必要做单元测试,除非你正在做这个章节的小练习...今天我就介绍一下如何在iPhone的开发过程中使用单元测试。
这是我自己写的iphone选择题测试的应用,设计到数据库sqlite,页面切换等知识,大家参考参考~
Iphone开发系列源码——Iphone主题源码Iphone开发系列源码——Iphone主题源码Iphone开发系列源码——Iphone主题源码Iphone开发系列源码——Iphone主题源码Iphone开发系列源码——Iphone主题源码Iphone开发系列源码...
xcode开发,单元测试用例Demo,有帮助
iPhone开发实战 iPhone开发 iPhone iPhone4 iPhone开发实战 iPhone开发 iPhone iPhone4
xCode 单元测试指南中文pdf文档,iPhone开发调试测试必备良药!
Iphone开发系列源码——iPhone版Wordpress源代码Iphone开发系列源码——iPhone版Wordpress源代码Iphone开发系列源码——iPhone版Wordpress源代码Iphone开发系列源码——iPhone版Wordpress源代码Iphone开发系列源码...
iphone开发之xml解析iphone开发之xml解析iphone开发之xml解析iphone开发之xml解析iphone开发之xml解析
资源名称:iPhone开发入门到精通视频教程资源目录:【】iOS开发源码系列---工具【】iOS开发源码系列---应用【】iOS开发源码系列---游戏【】iOS开发源码系列---类库与框架【】iOS开发真机测试与发布【】iOS开发视频...
这里推荐两本书《objective-c基础教程》和《iphone开发基础教程》,这两本都是圣经级的巨作,我相信每一个iphone开发人员应该都不会错过这两本书的。 等你xcode和objective-c摸熟之后,或者说,上面提到的那两...
Iphone开发系列源码——Image图片缩放随着手指Iphone开发系列源码——Image图片缩放随着手指Iphone开发系列源码——Image图片缩放随着手指Iphone开发系列源码——Image图片缩放随着手指Iphone开发系列源码——Image...
《iPhone开发基础教程》内容完整丰富,具有较强的通用性,编程领域中各层次读者都能通过《iPhone开发基础教程》快速学习iPhone开发,提高相关技能。iPhone 是一种全新的移动平台,苹果公司为它推出了强大的软件开发...
iPhone开发,iPhone开发教程,iPhone开发基础教程PDF版
知名的Head First系列丛书之一,风格与其他Head First系列一脉相承,一定能让读者轻松学会iPhone开发,《深入浅出iPhone开发》是针对iPhone开发的初学者设计的,以几个应用实例的开发为例,循序渐进地对iPhone开发的...
这个文档是我自己根据项目经验整理的,比较实用。主要是关于iphone单元测试中GHUnit框架的搭建。比较重要的是最后的关于环境变量的设置。
Iphone开发系列源码——多功能播放器源码Iphone开发系列源码——多功能播放器源码Iphone开发系列源码——多功能播放器源码Iphone开发系列源码——多功能播放器源码Iphone开发系列源码——多功能播放器源码Iphone开发...
Iphone开发系列源码——星级评价实现代码Iphone开发系列源码——星级评价实现代码Iphone开发系列源码——星级评价实现代码Iphone开发系列源码——星级评价实现代码Iphone开发系列源码——星级评价实现代码Iphone开发...
本书全面探讨了iPhone平台的两种编程方式——Web开发和SDK编程。全在Web开发方面,分别介绍了三个iPhone Web库,即WebKit、iUI和Canvas,并讨论了Web开发环境Dashcode,最后阐述Web应用程序的调试。在SDK开发方面,...
轻松学iPhone共分3篇。第1篇介绍iPhone的发展、iPhone开发环境以及开发工具的安装过程、iPhone Simulator模拟器
Iphone开发系列源码——长按实现图标抖动和删除的代码Iphone开发系列源码——长按实现图标抖动和删除的代码Iphone开发系列源码——长按实现图标抖动和删除的代码Iphone开发系列源码——长按实现图标抖动和删除的代码...