测试框架介绍

单元测试

单元测试(又称为模块测试)是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。在过程化编程中,一个单元就是单个程序、函数、过程等;对于面向对象编程,最小单元就是方法,包括基类(超类)、抽象类、或者派生类(子类)中的方法。
通常来说,程序员每修改一次程序就会进行最少一次单元测试,在编写程序的过程中前后很可能要进行多次单元测试,以证实程序达到软件规格书要求的工作目标,没有程序错误;虽然单元测试不是什么必须的,但也不坏,这牵涉到项目管理的政策决定。
每个理想的测试案例独立于其它案例;为测试时隔离模块,经常使用stubs、mock或fake等测试马甲程序。单元测试通常由软件开发人员编写,用于确保他们所写的代码符合软件需求和遵循开发目标。它的实施方式可以是非常手动的(通过纸笔),或者是做成构建自动化的一部分。(维基百科

iOS中的常见的单元测试框架有XCTest(OCUnit)、GHUnit、OCMock

XCTest

XCTest的前身是OCUnit,是一个集成在Xcode中的测试框架。Xcode6默认建立的工程带有XCTest。

GHUnit

GHUnit是Github上一个非常有名的开源框架,地址

GHUnit 是一个为Mac OS X 和iOS的测试框架。GHUnit导入工程中有点麻烦。
特征

1. 支持在Xcode中运行测试、跟踪断点、并直接与调试器交互
2. 从命令行运行或者使用MakeFile文件运行
3. 并行测试
4. 运行测试UI组件
5. 捕获显示测试细节
6. 通过关键字来搜索和过滤测试案例
7. 查看测试日志
8. 显示堆栈和调试信息
9.作为框架引用
10. 确定View是否发生改变(UI验证)
11. 尽快批准和记录View变化

OCMock

OCMock 是一个Objective-C实现的mock 对象。是一个开源库: 地址
OCMock 使用静态库的形式加入project。

#import <OCMock/OCMock.h>```
来导入。具体文档参见[OCMock](http://ocmock.org/)

##Kiwi
Kiwi是一个iOS平台的行为驱动开发的测试框架。为了提供一个设置和使用简单的BDD库。**[Kiwi](https://github.com/kiwi-bdd/Kiwi)**
介绍如下:[iOS开发--TDD的iOS开发初步以及Kiwi使用入门](http://onevcat.com/2014/02/ios-test-with-kiwi/)

[置换测试: Mock, Stub 和其他](http://objccn.io/issue-15-5/)
[[iOS单元测试系列]单元测试框架选型](http://zixun.github.io/blog/2015/04/11/iosdan-yuan-ce-shi-xi-lie-dan-yuan-ce-shi-kuang-jia-xuan-xing/)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 我们为什么要用测试框架呢?当然对项目开发有帮助了,但是业内现状是经常赶进度,所以TDD还是算了吧,BDD就测测数据...
    CrespoXiao阅读 14,850评论 9 60
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,194评论 4 61
  • 转载自:https://github.com/Tim9Liu9/TimLiu-iOS 目录 UI下拉刷新模糊效果A...
    袁俊亮技术博客阅读 14,091评论 9 105
  • 诗词之美 刚刚我在旁边听了几位选手的演讲,感觉感情很复杂,一个是长得好看的,一个是长得储老师是难看的,我是两者的结...
    柠小檬1314阅读 2,767评论 1 1
  • 最近知道一个消息,听说我们家可能成为城市拆迁户。这当然是一件大好事,我的婆家那陈旧不便买卖的房子就算是快活过来了,...
    王栎涵阅读 1,014评论 2 5