第3章 iOS单元测试
单元测试是一种测试手段,其价值在Web开发过程中已得到体现和证实,笔者坚信,单元测试实践同样会在iOS平台上发挥巨大的作用。但由于iOS平台还是一个发展中的平台,单元测试的平台工具和手段都还需要充实,并且单元测试的相关实践还需要总结和沉淀,所以iOS的单元测试实践在国内相对滞后一些。可喜的是近期在国外一些知名的技术论坛上已经涌现出了一些优质的iOS单元测试的教程供大家学习,伴随着其不断地发展和完善, iOS单元测试的可执行性和重要性会慢慢地体现出来。本章主要介绍单元测试的相关工具和单元测试的基本套路。
3.1单元测试工具
说到单元测试,必须先说一下单元测试的工具。 在iOS开发的过程中使用的语言是Objective-C。对于这门语言来说,单元测试工具有很多款。本章会选取1 ~ 2款使用广泛并且功能强大的单元测试工具进行详细的功能阐述。
3.1.1 OCl Jnit
OCUnit是现在Xcode自带的单元测试工具,也是Objective-C语言使用最广泛的单元测试工具。先通过一个"Hello_ OCUnit" 的测试用例来初步认识OCUnit的使用方法。
首先启动Xcode开发环境并且新建一个项目。在如图3-1所示的项目配置中选择“Empty Application”,单击“Next" 按钮后你将会看到如图3-2所示的情景,我们需要在项目的名称中填写“Hello_ OCUnit" ,然后在项目的设置中,选择
“Include Unit Tests"和“Use Automatic Reference Counting"选项。先来解释一下这两个选项的意思。“Include Unit Tests”的意思是包含单元测试,这个选项被选中后,在Xcode中会自动给开发者建立一个Unit Test项目,方便开发者开发单元测试。“Use Automatic Reference Counting"的中文意思是“使用自动引用计数技术”,自动引用计数技术是在iOS 5.0以后引入的一个新特性,可以帮助开发者更方便地管理内存。相关自动引用计数技术( ARC )的一些详细内容可以参考Apple官方文档。本章的所有实例项目都会使用ARC技术。