除了这些之外,Quick也支撑一些切入点,进行测试前的设备:
- beforeEach
- afterEach
- beforeAll
- afterAll
- beforeSuite
- afterSuite
Nimble
因为Quick是基于XCTest,开辟者当然可以收应用断言来定义测试用例成功或者掉败。Quick供给了一个更有好的Framework来进行这种断言:https://github.com/Quick/Nimble
比如,一个常见的XCTest断言如下:
- XCTAssertTrue(ConditionCode, "FailReason")
在掉足的时刻,会提示
进入Todo首页,点击add,进入添加页面,输入文字,点击save。
比如,以下测试Dolphin行动,它具有行动is friendly和is smart
起首解释两个术语:
- mock 表示一个模仿对象
- stub 追踪办法的调用,在办法调用的时刻返回指定的值。
- [alert setAccessibilityLabel:@"Label"];
- [alert setAccessibilityValue:@"Value"];
- [alert setAccessibilityTraits:UIAccessibilityTraitButton];
测试的精确性和工作量很大年夜程度上依附于开辟人员的代码质量。
- XCAssertTrue failed, balabala
应用Nimble后,断言变成类似
- expect(1 + 1).to(equal(2))
- expect(3) > 2
- expect("seahorse").to(contain("sea"))
- expect(["Atlantic", "Pacific"]).toNot(contain("Mississippi"))
并且,掉足的时刻,提示信息会带着高低文的值信息,闪开辟者更轻易的┞芬到缺点。
让你的代码更轻易单位测试
平日,为了单位测试的精确性,我们在写函数(办法)的时刻会借鉴一些函数式编程的思惟。个中最重要的一个思惟就是
- pure function(纯函数)
何为Pure function?就是如不雅一个函数的输入一样,那么输出必定一样。
比如,如许的一个函数就不是pure function。因为它依附于外部变量value的值。
- static NSInteger value = 0;
- - (NSInteger)function_1{
- value = value + 1;
- return value;
- }
而这个函数就是pure function,因为给定输入,输出必定一致。
- - (NSInteger)function_2:(NSInteger)base{
- NSInteger value = base + 1;
- return value;
- }
所以,如不雅你写了一个没有参数,或者没有返回值的办法,那么你要当心了,很可能这个办法很难测试。
推荐阅读
如何安装Debian的非systemd复刻版本Devuan Linux
Devuan Linux 是 Debian 最新的复刻版本,是基于 Debian 的一个被设计为完全去除了 systemd 的版本。设置 Devuan Linux 的域名Devuan 宣布于 2014 岁尾,并经由了一段活泼的开辟。最新的发>>>详细阅读
本文标题:iOS自动化测试的那些干货
地址:http://www.17bianji.com/lsqh/34681.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示