iOS中单元测试和UI测试教程2019-12——Xcode10.3

单元测试的目的

  1. 提高开发效率
  2. 提高代码的健壮性
  3. 保证程序的正常运行(不包括发现bug)

系统测试的几个方法说明

测试的父类 : XCTestCase
开始的方法: setup()
测试结束走的方法:teardown()

swift 项目和OC项目同理,只是在第三步上注意一下不同的头文件引用的方式。

1. 新建OC项目,选择单元测试和UI测试

Snipaste_2019-12-12_11-07-56.png

2. 编写测试方法

Snipaste_2019-12-12_11-09-58.png

3. 在测试单元类中引用要测试的类

swift的测试类中集成测试的类

Snipaste_2019-12-12_11-29-54.png

OC的不用.workspace的引用测试的类
Snipaste_2019-12-12_15-09-16.png

OC项目中用
.workspace打开的项目,需要配置一下Header Search Paths 目录。添加一条${SRCROOT},并设置为recursive 为递归模式(搜索目录下的子目录和文件)
Snipaste_2019-12-12_15-26-12.png

4. 调用单元测试中调用要测试的方法,编写测试方法时,必须以test开头

Snipaste_2019-12-12_15-41-21.png

私有类的方法,采用分类或扩展进行测试

1. 添加测试的类的扩展,内部的属性和成员变量

Snipaste_2019-12-13_10-27-28.png

2. 引用扩展头文件

Snipaste_2019-12-13_10-28-57.png

3. 编写更多的测试断言

Snipaste_2019-12-13_10-30-06.png

4. 使用分类Category 进行类方法和实例方法,对私有方法编程对外可以测试调用的方法, 其中分类的.m文件里面不用写什么方法实现,直接在分类的.h文件中写方法声明即可。程序在调用的时候回先找分类对这个方法是否实现,没有实现会直接去分类的主类去查找实现,从而实现了将主类的私有方法对外可用。那就可以把分类的.m文件可以删除了

Snipaste_2019-12-13_11-13-29.png

UI测试

  1. 找到xxxUITests的工程,如果没有就创建一个,具体创建的操作步骤,大神们可以在网上搜搜。
  2. 在UI测试文件中引用要测试的类
  3. 编写测试方法
  4. 将光标点击到如图的位置
  5. 点击小红点进行UI调试记录

然后你在程序中的各种操作都会记录到你刚才光标所指的位置上。


Snipaste_2019-12-13_11-33-32.png

Snipaste_2019-12-13_11-36-57.png

你可能感兴趣的:(iOS中单元测试和UI测试教程2019-12——Xcode10.3)