[TOC]
新建
- 新建项目时,勾选
include Unit Tests
- 新建:File --> new --> target --> iOS --> iOS Unit Testing Bundle
- iOS UI Testing Bundle : 对UI界面的调试
- iOS Unit Testing Bundle: 功能逻辑的测试
此方法在此类的其他方法之前被调用
- (void)setUp {
[super setUp];
// Put setup code here. This method is called before the invocation of each test method in the class.
}
此方法在此类的其他方法之后被调用
- (void)tearDown {
// Put teardown code here. This method is called after the invocation of each test method in the class.
[super tearDown];
}
这是一个功能测试用例的例子。使用XCTAssert和相关函数来验证您的测试产生正确的结果。
- (void)testExample {
// This is an example of a functional test case.
// Use XCTAssert and related functions to verify your tests produce the correct results.
}
测试性能的例子
- (void)testPerformanceExample {
// This is an example of a performance test case.
[self measureBlock:^{
// Put the code you want to measure the time of here.
}];
}
使用
YKHomeVC.h/m 有一个
load()
方法
-(NSUInteger)load{
return 1+2;
}
在测试文件中导入YKHomeVC.h
#import "YKHomeVC.h"
@interface ExplorerTests : XCTestCase
@property(nonatomic,strong)YKHomeVC *homeVc;
@end
- (void)setUp {
[super setUp];
self.homeVc = [[YKHomeVC alloc]init];
}
- (void)tearDown {
self.homeVc = nil;
[super tearDown];
}
- (void)testExample {
NSInteger value = [self.homeVc load];
//如果不相等为false,抛出异常
XCTAssertEqual(value,4,@"计算失败");
}
性能测试
在block里面执行代码块,将会得到耗时时间等
断言
XCTAssertNil(expression, ...)
当得到的值不为空时,生成一个错误引发异常
NSString a = @"hello";
XCTAssertNil(a,@"错误");
XCTAssertNotNil(expression, ...)
当得到的值为空时,生成一个错误引发异常
NSString a = nil;
XCTAssertNotNil(a,@"错误");
XCTAssert(expression, ...)
当得到的值为
false
时,生成一个错误引发异常
Boolean a = false;
XCTAssert(a,@"错误");
XCTAssertTrue(expression, ...)
当得到的值为
false
时,生成一个错误引发异常
Boolean a = false;
XCTAssertTrue(a,@"错误");
XCTAssertFalse(expression, ...)
当得到的值为
true
时,生成一个错误引发异常
Boolean a =true;
XCTAssertTrue(a,@"错误");
XCTAssertEqualObjects(expression1, expression2, ...)
当两个对象不相等时,生成一个错误引发异常,类型为
id类型
Boolean a =true;
Boolean b = false;
XCTAssertEqualObjects(a,b,@"错误");
XCTAssertNotEqualObjects(expression1, expression2, ...)
当两个对象相等时,生成一个错误引发异常,类型为
id类型
Boolean a =true;
Boolean b =true;
XCTAssertNotEqualObjects(a,b,@"错误");
XCTAssertEqual(expression1, expression2, ...)
当两个对象不相等时,生成一个错误引发异常,两个类型为
C类型
。
Boolean a =true;
Boolean b =true;
XCTAssertEqual(a,b,@"错误");
XCTAssertNotEqual(expression1, expression2, ...)
当两个对象相等时,生成一个错误引发异常,两个类型为
C类型
。
Boolean a =true;
Boolean b =true;
XCTAssertNotEqual(a,b,@"错误");
XCTAssertEqualWithAccuracy(expression1, expression2, accuracy, ...)
当accuracy的精度值小于等于 expression1与expression2的区间范围,生成一个错误引发异常,,两个类型为
C类型
。
XCTAssertNotEqualWithAccuracy(expression1, expression2, accuracy, ...)
当accuracy的精度值大于 expression1与expression2的区间范围,生成一个错误引发异常,,两个类型为
C类型
。
XCTAssertGreaterThan(expression1, expression2, ...)
当 exc1 小于等于exc2时,生成一个错误引发异常,两个类型为
C类型
。
XCTAssertGreaterThanOrEqual(expression1, expression2, ...)
当 exc1 小于exc2时,生成一个错误引发异常,两个类型为
C类型
。
XCTAssertLessThan(expression1, expression2, ...)
当 exc1 大于等于exc2时,生成一个错误引发异常,两个类型为
C类型
。
XCTAssertLessThanOrEqual(expression1, expression2, ...)
当 exc1 大于exc2时,生成一个错误引发异常,两个类型为
C类型
。
XCTAssertThrows(expression, ...)
当exp1不是异常时,生成一个错误引发异常,类型为
expression
XCTAssertThrowsSpecific(expression, exception_class, ...)
当exp1不是exp2异常类时,生成一个错误引发异常,类型为
expression
XCTAssertThrowsSpecificNamed(expression, exception_class, exception_name, ...)
当exp1不是exp2异常类且异常名时,生成一个错误引发异常,类型为
expression
XCTAssertNoThrow(expression, ...)
当exp是异常时,生成一个错误引发异常,类型为
expression
XCTAssertNoThrowSpecific(expression, exception_class, ...)
当exp是某个异常类时,生成一个错误引发异常,类型为
expression
XCTAssertNoThrowSpecificNamed(expression, exception_class, exception_name, ...)
当exp是某个异常类且名称相同时,生成一个错误引发异常,类型为
expression
网友评论