單元測(cè)試

一、運(yùn)行第一個(gè)單元測(cè)試:
1.在Xcode 5中新建一個(gè)工程默認(rèn)自帶一個(gè)單元測(cè)試的文件夾,IDE自動(dòng)生成了一個(gè)實(shí)現(xiàn)XCTestCase的.m文件,里面有一個(gè)失敗測(cè)試(早期版本中實(shí)現(xiàn)的是SenTestCase,是蘋(píng)果集成的第三方的,現(xiàn)在蘋(píng)果建議使用新的XCTestCase)。

2.測(cè)試函數(shù)的要求是:1.必須無(wú)返回值;2.以test開(kāi)頭;

3.測(cè)試函數(shù)執(zhí)行的順序:以函數(shù)名中test后面的字符大小有關(guān),比如-(void)test001XXX會(huì)先于-(void)test002XXX執(zhí)行;

4.運(yùn)行單元測(cè)試的快捷鍵:CMD + U;

二、各種斷言測(cè)試:
XCTFail(format…) 生成一個(gè)失敗的測(cè)試;

XCTAssertNil(a1, format...)為空判斷,a1為空時(shí)通過(guò),反之不通過(guò);

XCTAssertNotNil(a1, format…)不為空判斷,a1不為空時(shí)通過(guò),反之不通過(guò);

XCTAssert(expression, format...)當(dāng)expression求值為T(mén)RUE時(shí)通過(guò);

XCTAssertTrue(expression, format...)當(dāng)expression求值為T(mén)RUE時(shí)通過(guò);

XCTAssertFalse(expression, format...)當(dāng)expression求值為False時(shí)通過(guò);

XCTAssertEqualObjects(a1, a2, format...)判斷相等,[a1 isEqual:a2]值為T(mén)RUE時(shí)通過(guò),其中一個(gè)不為空時(shí),不通過(guò);

XCTAssertNotEqualObjects(a1, a2, format...)判斷不等,[a1 isEqual:a2]值為False時(shí)通過(guò),

XCTAssertEqual(a1, a2, format...)判斷相等(當(dāng)a1和a2是 C語(yǔ)言標(biāo)量、結(jié)構(gòu)體或聯(lián)合體時(shí)使用,實(shí)際測(cè)試發(fā)現(xiàn)NSString也可以);

XCTAssertNotEqual(a1, a2, format...)判斷不等(當(dāng)a1和a2是 C語(yǔ)言標(biāo)量、結(jié)構(gòu)體或聯(lián)合體時(shí)使用);

XCTAssertEqualWithAccuracy(a1, a2, accuracy, format...)判斷相等,(double或float類型)提供一個(gè)誤差范圍,當(dāng)在誤差范圍(+/-accuracy)以內(nèi)相等時(shí)通過(guò)測(cè)試;

XCTAssertNotEqualWithAccuracy(a1, a2, accuracy, format...) 判斷不等,(double或float類型)提供一個(gè)誤差范圍,當(dāng)在誤差范圍以內(nèi)不等時(shí)通過(guò)測(cè)試;

XCTAssertThrows(expression, format...)異常測(cè)試,當(dāng)expression發(fā)生異常時(shí)通過(guò);反之不通過(guò);(很變態(tài))

XCTAssertThrowsSpecific(expression, specificException, format...) 異常測(cè)試,當(dāng)expression發(fā)生specificException異常時(shí)通過(guò);反之發(fā)生其他異?;虿话l(fā)生異常均不通過(guò);

XCTAssertThrowsSpecificNamed(expression, specificException, exception_name, format...)異常測(cè)試,當(dāng)expression發(fā)生具體異常、具體異常名稱的異常時(shí)通過(guò)測(cè)試,反之不通過(guò);

XCTAssertNoThrow(expression, format…)異常測(cè)試,當(dāng)expression沒(méi)有發(fā)生異常時(shí)通過(guò)測(cè)試;

XCTAssertNoThrowSpecific(expression, specificException, format...)異常測(cè)試,當(dāng)expression沒(méi)有發(fā)生具體異常、具體異常名稱的異常時(shí)通過(guò)測(cè)試,反之不通過(guò);

XCTAssertNoThrowSpecificNamed(expression, specificException, exception_name, format...)異常測(cè)試,當(dāng)expression沒(méi)有發(fā)生具體異常、具體異常名稱的異常時(shí)通過(guò)測(cè)試,反之不通過(guò)
ios UnitTest 學(xué)習(xí)筆記

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容