文档详情

ios专题 OCUnit===分析和总结.docx

发布:2024-03-11约4.58千字共7页下载文档
文本预览下载声明

ios专题-OCUnit

OCUnit是集成在Xcode开发环境的单元测试框架;OCUnit运行必须包含SenTestingKit.framework这个库;

针对需要测试的类,每个类写出自己的TestCase,独立组织一个文件。每个测试类都是继承自SenTestCase类,这里有3

个重要的方法需要介绍:

-(void)setUp:每个test方法执行前调用,用于类的创建,一些变量的初始化等

-(void)tearDown:每个test方法执行后调用

-(void)testXXX:这个是真正运行的测试方法,命名就是不带参数,以test开始。

这里的每个testXXX方法可以在Scheme里面看到,并可以设置是否测试这个方法

开发者的主要工作是自己实现这些无返回值的testXXX方法,一般框架会提供大量的断言方法,如果还是觉得不够丰富,可以使用第三方的库来进行扩充,比如:OCHamcrest。

OCUnit断言介绍:

无条件失败(UnconditionalFailure)

STFail

让测试用例失败

STFail(failure_description,...)

参数

failure_description

指定你错误消息的格式化字符串,可以为nil

...

(可选)以逗号隔开的替换到failure_description的参数列表

相等测试(EqualityTests)

STAssertEqualObjects

当两个对象不同时,测试失败STAssertEqualObjects(object_1,object_2,failure_description,...)参数

object_1

一个对象

object_2

一个对象

failure_description

指定你错误消息的格式化字符串,可以为nil

...

(可选)以逗号隔开的替换到failure_description的参数列表

说明:当[object_1isEqualTo:object_2]为false时,测试失败

STAssertEquals

当两个值不等的时候测试失败。

STAssertEquals(value_1,value_2,failure_description,...)

参数

value_1value_2

一个数值,结构体,或联合体。一个数值,结构体,或联合体。

failure_description

指定你错误消息的格式化字符串,可以为nil

...

(可选)以逗号隔开的替换到failure_description的参数列表

说明:当value_1不等于value_2的时候测试失败。

STAssertEqualsWithAccuracy

当两个值的差别大于给定值时,测试失败

STAssertEqualsWithAccuracy(value_1,value_2,accuracy,failure_description,...)

参数

value_1value_2accuracy

一个整型或浮点值。一个整型或浮点值。一个整型或浮点值。

failure_description

指定你错误消息的格式化字符串,可以为nil

...

(可选)以逗号隔开的替换到failure_description的参数列表

说明:当value_1和value_2之间相差大于accuracy时,测试失败。

空值测试(NilTests)

STAssertNil

Failsthetestcasewhenagivenexpressionisnotnil.

如果给定的表达式不是nil,测试失败。

STAssertNil(expression,failure_description,...)

参数

expression

要测试的表达式。

failure_description

指定你错误消息的格式化字符串,可以为nil

...

(可选)以逗号隔开的替换到failure_description的参数列表

STAssertNotNil

Failsthetestcasewhenagivenexpressionisnil.当表达式为nil时,测试失败。STAssertNotNil(expression,failure_description,...)

参数

expression

要测试的表达式。

failure_description

指定你错误消息的格式化字符串,可以为nil

...

(可选)以逗号隔开的替换到failure_description的参数列表

显示全部
相似文档