IOS 下自动化测试框架 GHUnit 和 OCMock 初探 [一]
来源:互联网 发布:淘宝怎么搜卖家id 编辑:程序博客网 时间:2024/05/21 19:37
IOS下自动化测试的框架主要有 OCUnit, GHUnit ,KIF,Kiwi等。OCUnit 是XCode自带的测试框架。下面我将给大家介绍 另一个强大的 测试框架 GHUnit
相比自带的ocunit,GHUnit可以兼容ocunit的语法,并提供了异步测试的方法。测试target是一个独立的app,可以加断点和可以在真机上运行。可以使用GHAsyncTestCase 支持异步测试。
GHUnit 项目https://github.com/gabriel/gh-unit
GHUnit同时支持IOS和MacOS开发测试框架.她包括如下功能
- 支持run 模式 支持断点debug
- 支持测试 UI 组件
- 支持界面展示获得详细的测试结果。
- 支持对测试用例搜索功能
- 显示详细的堆栈调用信息
- 可以作为framework的方式被引入
- 可以推断UIView 是否被改变
- 快速验证和纪录UIView的改变
- 可以查看UIView的效果图。从来查看变化
接下来我们就介绍怎么在test 工程中加入GHUnit支持。
1. 新建一个工程
Next
注意不需要include Unit Test
2 把项目生成的AppDelegate.h 和.m 文件删除(可选)
3 在工程中加入GHUnitIOS.framework
可以通过
选择GHUnitIOS.framework添加到工程项目下。
tips:需要选中Copy items into destionation group's folder (if needed)
好了。framework已经添加入test工程中了。
4 找到项目的 main.h
修改 main 函数 如下图:
Tips:如果提示找不到 GHUnitIOSAppDelegete.h的话,需要配置工程属性
Header Search Paths :定义到保护了GHUnitIOS.framework的目录。
为了使用GHUnitIOS.framework 。还需要条件 Other linker flags: -ObjC -all_load
不出问题。这个时候应该可以了。直接run工程,将出现
点击 右上角 Run 可以获得测试结果。
5 解下来就想OCUnit一样,直接建立测试文件。并写测试用例方法。编译运行。
新建 MyTest.h .m
MyTest.h
#import <UIKit/UIKit.h>
#import "GHUnit.h"
@interface MyTest : GHTestCase
@end
MyTest.m
#import "MyTest.h"
@implementation MyTest
- (void)testFoo{
NSString *str =[NSStringstringWithString:@"2321"];
GHAssertEqualStrings(str,@"2321",nil);
}
看看测试成功 和 失败结果如何...
怎么样,是不是很简单,有图有真相。在下一节我将介绍 OCMock 的应用,以及怎么集成到GHUnit Framework,敬请期待。。。
- IOS 下自动化测试框架 GHUnit 和 OCMock 初探 [一]
- IOS 下自动化测试框架 GHUnit 和 OCMock 初探 [一]
- IOS 下自动化测试框架 GHUnit 和 OCMock 初探 [二]
- IOS 下自动化测试框架 GHUnit 和 OCMock 初探 [二]
- iOS测试-OCMock和GHUnit
- iOS测试-(二)OCMock和GHUnit
- XCode 内置了 OCUnit 单元测试框架,但目前最好用的测试框架应该是 GHUnit。通过 GHUnit + OCMock 组合,我们可以在 iOS 下进行较强大的单元测试功能。本文将演示如何在
- OCUnit和GHUnit和OCMock
- Cocoapods + GHUnit + OCMock 实现iOS单元测试
- iOS单元测试GHUnit + OCMock(不使用cocoapods版)
- iOS单元测试GHUnit + OCMock(使用cocoapods版)
- iOS测试-GHUnit配置
- Xcode6下iOS单元测试——XCTest和GHUnit框架简介和比较
- Xcode 5 单元测试(二)OCMock和GHUnit
- Xcode 5 单元测试(二)OCMock和GHUnit
- Xcode 5 单元测试(二)OCMock和GHUnit
- Xcode 5 单元测试(二)OCMock和GHUnit
- Xcode 5 单元测试(二)OCMock和GHUnit
- android手机屏幕适配补充
- 在哪购买xml格式
- ubuntu环境下编译内核详解
- 什么是你的核心竞争力之一?
- Android AIDL接口定义语言
- IOS 下自动化测试框架 GHUnit 和 OCMock 初探 [一]
- Ural 1126. Magnetic Storms
- IOS学习:在IOS开发中使用GoogleMaps SDK
- Spring scope bean生存范围
- mysql常用命令详解大全(二)之mysql查询语句select
- Ubuntu下使用OpenSSH的八个小窍门
- C# 启动EXE文件及带启动参数EXE
- php cli方式下获取服务器ip
- IT人35岁后做什么?一个软件开发人员的见解