iOS 单元测试

596 篇文章 18 订阅
405 篇文章 4 订阅

作用一名合格的程序员,得能文能武。写的了代码,也要写的了单元测试。

单元测试步骤

1.File -> New -> Target, 选择单元测试Target,创建成功

如果项目是老项目,那需要手动创建一下UnitTest Target,如果项目里已经有了就忽略。

2.创建一个swift工具的测试类CalculatorTests

然后就可以在里面写单元测试用例了。

单元测试常用知识点

环境变量的管理

setUp()测试开始前,初始化要使用的环境变量

tearDown()测试结束后,清理使用的环境变量

控制测试用例的执行顺序

1.可以通过test+101这种形式,顺序会根据test后面的数字,先小,后大的顺序进行执行

2.使用测试用例组的形式,执行顺序会按照组中的顺序,由上到下进行执行

静态变量allTests中放置排序后的测试用例

1

2

3

4

static var allTests = [

    testCase(CalculatorTests.testAddition),

    testCase(CalculatorTests.testSubtraction)

]

测试异步方法

使用XCTestExpectation测试异步方法

1

2

3

let expectation XCTestExpectation(description"HTTP request")

expectation.fulfill()

wait(for: [expectation], timeout5.0)

方法的性能测试

使用tmeasure(metrics: [XCTMetric], block: () -> Void)做性能测试

func measure(metrics: [XCTMetric], block: () -> Void)是 XCTest 中的一个方法,用于执行一段代码块并测量其执行时间。

参数 metrics 是一个 XCTMetric 类型的数组,用于指定要测量的指标。当前支持的指标包括:

wallClockTime:代码块执行的实际时间;

userTime:代码块执行期间 CPU 时间花费的量;

runTime:代码块执行期间系统运行时间的量。

执行 measure 方法会启动一个计时器,在代码块执行完成后停止计时器并记录测量的指标值。可以在测试报告中看到测量结果。

作用一名合格的程序员,得能文能武。写的了代码,也要写的了单元测试。

单元测试步骤
1.File -> New -> Target, 选择单元测试Target,创建成功
如果项目是老项目,那需要手动创建一下UnitTest Target,如果项目里已经有了就忽略。
2.创建一个swift工具的测试类CalculatorTests
然后就可以在里面写单元测试用例了。

单元测试常用知识点
环境变量的管理
setUp()测试开始前,初始化要使用的环境变量
tearDown()测试结束后,清理使用的环境变量
控制测试用例的执行顺序
1.可以通过test+101这种形式,顺序会根据test后面的数字,先小,后大的顺序进行执行
2.使用测试用例组的形式,执行顺序会按照组中的顺序,由上到下进行执行
静态变量allTests中放置排序后的测试用例
1
2
3
4
static var allTests = [
    testCase(CalculatorTests.testAddition),
    testCase(CalculatorTests.testSubtraction)
]
测试异步方法

使用XCTestExpectation测试异步方法
1
2
3
let expectation = XCTestExpectation(description: "HTTP request")
expectation.fulfill()
wait(for: [expectation], timeout: 5.0)
方法的性能测试
使用tmeasure(metrics: [XCTMetric], block: () -> Void)做性能测试
func measure(metrics: [XCTMetric], block: () -> Void)是 XCTest 中的一个方法,用于执行一段代码块并测量其执行时间。
参数 metrics 是一个 XCTMetric 类型的数组,用于指定要测量的指标。当前支持的指标包括:
wallClockTime:代码块执行的实际时间;
userTime:代码块执行期间 CPU 时间花费的量;
runTime:代码块执行期间系统运行时间的量。
执行 measure 方法会启动一个计时器,在代码块执行完成后停止计时器并记录测量的指标值。可以在测试报告中看到测量结果。

写完代码写一下单元测试还是挺有意义的,虽然面向测试编程虽然前期会影响一些进度,但会收获额外的东西

1.对自己的代码充满信心

2.直面测试的勇气

3.节省回归测试的时间

另外,在写单元测试用例的过程中,也会自己发现某些隐藏的Bug和不符合预期功能的方法,并调整不规范的代码设计。所以有条件的话还是要写一下单元测试。

而且后续也可以在单元测试用例量达到一定程度后,可以搭建自动化测试后台,进行定时执行单元测试,发放测试报告。

最后:下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取【保证100%免费】

在这里插入图片描述

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

图片

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值