IOS逻辑自动化测试实践

发表于:2017-07-24来源:TMQ作者:TMQ点击数: 标签:
白盒测试主要测试APP的内部结构或运作,以代码实现的角度来设计测试案例。白盒测试优点在于要求测试人员去学习软件的实现,可以检测代码中的每条分支和路径,揭示隐藏在代码中

一、怎么界定自动化测试范围

白盒测试主要测试APP的内部结构或运作,以代码实现的角度来设计测试案例。白盒测试优点在于要求测试人员去学习软件的实现,可以检测代码中的每条分支和路径,揭示隐藏在代码中的错误,对代码的测试比较彻底。

单元测试属于白盒测试的一种手段,是一种提高软件质量非常有效的方法。对于多次的迭代开发和重构,团队需要通过单元测试来看是否新的迭代对于原有的功能是否有影响。但是,单元测试在现实实践中存在的一个不可忽视的问题是:测试用例的维护成本比较高,往往对其维护的工作量并不比被测代码的开发量小。所以,本文引入了逻辑自动化测试概念,希望能在高价值和维护成本中找到平衡。

逻辑自动化测试:考虑到手机APP的UI的多变性,仅对非UI相关的逻辑业务类进行自动化测试,优先对外接口。在本文中,以iOS手机管家为例子,逻辑自动化测试的范围选定为ObjectController文件夹中的类,此文件夹中的类文件均为与UI无关的业务逻辑类。

二、IOS单元测试框架使用和代码覆盖率查看

XCTest是Xcode5中新引入的一个测试框架,它非常简单并且与 Xcode 的 IDE 直接集成,并且其单元测试的代码不会打包到开发的项目工程里面,隔离性比较好。

1、如何新建测试用例

打开项目工程,file -》new-》target-》iOS-》iOS Unit testing bundle(输入名字和选择language),之后在此文件夹下new file新建测试用例类。

Ps:测试类继承XCTestCase类,并且测试用例必须以test开头。

2、如何执行

有两种方式:一种是UI执行,一种是命令执行。

原文转自:http://tmq.qq.com/2017/07/ios/

...