準備測試工具
這里選用的是XCTest,它是Xcode8中內置的測試框架,使用起來非常簡單,分以下兩種情況為項目添加測試:
1. 新建工程時添加單元測試:
新建時添加單元測試
2.為已有工程添加單元測試
Xcode8中添加的步驟與前幾代有所不同:
添加Target
用關鍵詞test快速找到Unit Testing bundle
添加好單元測試后的工程結構
添加第一個測試
第一個測試是很重要的,它決定了我們后面測試的思路和方向,這里以需要什么測什么為指導原則,從結果出發,所以先來看下基本的點播需求:
工作日點播一部普通影片,收費2元,積一分。
根據以上需求描述,我們在RefactorDemoTests.m添加測試方法:
- (void)testStatement_Regular { Movie *matrixMovie1 = [[Movie alloc] initWithTitle:@"黑客帝國1" priceCode:MovieEnumRegular]; Demand *aDemand1 = [[Demand alloc] initWithMovie:matrixMovie1 timePeriod:TimePeriodEnumWorkDaytime];
// 顧客租賃一部:
XCTAssertTrue([@"溪石的點播清單\\\\n" } |
這個測試用例中,顧客“溪石”點播了一部老片《黑客帝國1》,由于是工作日,因此按原價收取,并積1分,詳細細節看Cutomer類源碼中的方法statement()。 按快捷鍵?U,運行測試,發現測試報錯了:
原文轉自:http://www.jianshu.com/p/0b4fd636ad2c