美文网首页将来跳槽用
iOS开发单元测试基础

iOS开发单元测试基础

作者: Cyrill | 来源:发表于2016-08-17 15:31 被阅读27次

什么是单元测试

在计算机编程中,单元测试(又称为模块测试, Unit Testing)是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。在过程化编程中,一个单元就是单个程序、函数、过程等;对于面向对象编程,最小单元就是方法,包括基类(超类)、抽象类、或者派生类(子类)中的方法。

准备

1.在当前Xcode中新建一个工程默认自带一个单元测试的文件夹,自动生成了一个实现XCTestCase的.m文件。
2.测试函数的要求:a.必须无返回值。 b.以test开头。
3.测试函数的执行顺序:按 系统比较排序后的顺序。
4.运行单元测试的快捷键:CMD + U

断言

下面一共18个断言( 含义转自ios UnitTest 学习笔记 )

XCTFail(format…) 生成一个失败的测试;
XCTAssertNil(a1, format...)为空判断,a1为空时通过,反之不通过; 
XCTAssertNotNil(a1, format…)不为空判断,a1不为空时通过,反之不通过;
XCTAssert(expression, format...)当expression求值为TRUE时通过; 
XCTAssertTrue(expression, format...)当expression求值为TRUE时通过; 
XCTAssertFalse(expression, format...)当expression求值为False时通过; 
XCTAssertEqualObjects(a1, a2, format...)判断相等,[a1 isEqual:a2]值为TRUE时通过,其中一个不为空时,不通过 ;
XCTAssertNotEqualObjects(a1, a2, format...)判断不等,[a1 isEqual:a2]值为False时通过;
XCTAssertEqual(a1, a2, format...)判断相等(当a1和a2是 C语言标量、结构体或联合体时使用,实际测试发现NSString也可以); 
XCTAssertNotEqual(a1, a2, format...)判断不等(当a1和a2是 C语言标量、结构体或联合体时使用);
XCTAssertEqualWithAccuracy(a1, a2,accuracy, format...)判断相等,(double或float类型)提供一个误差范围,当在误差范围(+/-accuracy)以内相等时通过测试; 
XCTAssertNotEqualWithAccuracy(a1, a2,accuracy, format...)判断不等,(double或float类型)提供一个误差范围,当在误差范围以内不等时通过测试; 
XCTAssertThrows(expression, format...)异常测试,当expression发生异常时通过;反之不通过;(很变态)
XCTAssertThrowsSpecific(expression,specificException, format...)异常测试,当expression发生specificException异常时通过;反之发生其他异常或不发生异常均不通过; 
XCTAssertThrowsSpecificNamed(expression,specificException, exception_name, format...)异常测试,当expression发生具体异常、具体异常名称的异常时通过测试,反之不通过; 
XCTAssertNoThrow(expression, format…)异常测试,当expression没有发生异常时通过测试;
XCTAssertNoThrowSpecific(expression,specificException, format...)异常测试,当expression没有发生具体异常、具体异常名称的异常时通过测试,反之不通过; 
XCTAssertNoThrowSpecificNamed(expression,specificException, exception_name, format...)异常测试,当expression没有发生具体异常、具体异常名称的异常时通过测试,反之不通过

相关文章

  • iOS开发——单元测试

    iOS开发——单元测试 iOS开发——单元测试

  • 【开发技巧】单元测试

    iOS XCTest单元测试 iOS开发:XCTest单元测试(附上一个单例的测试代码) [iOS单元测试系列]单...

  • 单元测试

    本文将介绍以下内容: iOS开发中添加单元测试的方法。 如何写单元测试用例及用例组。 介绍单元测试的一些基础概念。...

  • 测试替身在iOS开发中的实现整理

    开始之前 请允许先介绍在iOS开发测试中的一些基础框架和理论: 在iOS开发的过程中,我们常接触到的单元测试框架有...

  • iOS

    iOS 编写高质量代码的方法10个加速Table Views开发的建议iOS 开发-单元测试fir.im Week...

  • iOS单元测试

    iOS单元测试初探以及OCMock使用入门 这段时间在工作之余研究了一下iOS的单元测试,试图在项目中引入开发自己...

  • iOS开发单元测试基础

    什么是单元测试 在计算机编程中,单元测试(又称为模块测试, Unit Testing)是针对程序模块(软件设计的最...

  • 【目录-学习笔记】

    学习IOS开发的目的是前端时间我司研发总监要求测试做单元测试,很不幸被抽中做IOS单元测试,当是并不是那么反对,技...

  • 单元测试

    内容 单元测试 参考文章: [iOS单元测试系列]单元测试框架选型 iOS单元测试:Specta + Expect...

  • iOS开发基础:开发两年的你也不会写的Block

    iOS开发基础:开发两年的你也不会写的Block iOS开发基础:开发两年的你也不会写的Block

网友评论

    本文标题:iOS开发单元测试基础

    本文链接:https://www.haomeiwen.com/subject/tgmmsttx.html