今天是2016/01/19
目前在Xcode创建的项目支持out-of-the-box测试,新建的项目中有独立的测试group,即“项目名称+Test”group;可以作为测试target运行。用Command+R运行应用,Command+U编译运行测试的target。
从测试类型来看主要分:逻辑测试,UI测试,性能测试;分别测试应用的业务逻辑、UI效果和代码性能;
单击方法左侧方块运行此测试方法;command + u 运行所有测试方法;
iOS 新建工程时可选择添加UI测试和unit test,
默认的单元测试以“工程名+Tests”命名;
单元测试文件有两个默认方法:setup 和 teardown,
1.setup 单元测试的数据初始化开始;
2.teardown 单元测试完成并开始回收初始化数据垃圾;
3.testExample 示例测试方法,包含一个断言示例;
4.testPerformanceExample 性能测试的示例方法;
5.自己要测试的方法应定义类似为:- (void)testXXX:命名为XXX的测试方法,便于识别, 在测试方法内实现业务或逻辑,并用大量断言诊断各状态;
XCTest断言:
基本测试,可以用来测试指定的情况
XCTAssert(expression, format...)
如果expression(表达式)执行的结果为true的话,测试通过。否则,测试失败,并在console中输出后面的format字符串。
可以根据基本断言演化出功能更为强大和复杂的断言:
--->bool断言
XCTAssertTrue(expression,format...)
XCTAssertFalse(expression,format...)
--->equal test
XCTAssertEqual(expression1,expression2,format...)
XCTAssertNotEqual(expression1,expression2,format...)
--->nil test
XCTAssertNil(expression,format...)
XCTAssertNotNil(expression,format...)
--->无条件失败断言
XCTFail(format...)
XCTestExpectation
XCTestExpression异步测试类可以等待指定长度的时间,一直到某些条件符合的时候在开始测试。