iOS單元測試斷言

2021-06-22 06:24:39 字數 1924 閱讀 8176

1.在xcode 5中新建乙個工程預設自帶乙個單元測試的資料夾,ide自動生成了乙個實現xctestcase的.m檔案,裡面有乙個失敗測試(早期版本中實現的是sentestcase,是蘋果整合的第三方的,現在蘋果建議使用新的xctestcase)。

2.測試函式的要求是:1.必須無返回值;2.以test開頭;

3.測試函式執行的順序:以函式名中test後面的字元大小有關,比如-(void)test001***會先於-(void)test002***執行;

4.執行單元測試的快捷鍵:cmd + u;

xctfail(format…)生成乙個失敗的測試;

xctassertnil(a1, format...)為空判斷,a1為空時通過,反之不通過;

xctassertnotnil(a1, format…)不為空判斷,a1不為空時通過,反之不通過;

xctassert(expression, format...)當expression求值為true時通過;

xctasserttrue(expression, format...)當expression求值為true時通過;

xctassertfalse(expression, format...)當expression求值為false時通過;

xctassertequalobjects(a1, a2, format...)判斷相等,

[a1 isequal:a2]

值為true時通過,其中乙個不為空時,不通過;

xctassertnotequalobjects(a1, a2, format...)判斷不等,

[a1 isequal:a2]

值為false時通過,

xctassertequal(a1, a2, format...)判斷相等(當a1和a2是 c語言標量、結構體或聯合體時使用,實際測試發現nsstring也可以);

xctassertnotequal(a1, a2, format...)判斷不等(當a1和a2是 c語言標量、結構體或聯合體時使用);

xctassertequalwithaccuracy(a1, a2, accuracy, format...)判斷相等,(double或float型別)提供乙個誤差範圍,當在誤差範圍(+/-accuracy)以內相等時通過測試;

xctassertnotequalwithaccuracy(a1, a2, accuracy, format...) 判斷不等,(double或float型別)提供乙個誤差範圍,當在誤差範圍以內不等時通過測試;

xctassertthrows(expression, format...)異常測試,當expression發生異常時通過;反之不通過;(很**)

xctassertthrowsspecific(expression, specificexception, format...) 異常測試,當expression發生specificexception異常時通過;反之發生其他異常或不發生異常均不通過;

xctassertthrowsspecificnamed(expression, specificexception, exception_name, format...)異常測試,當expression發生具體異常、具體異常名稱的異常時通過測試,反之不通過;

xctassertnothrow(expression, format…)異常測試,當expression沒有發生異常時通過測試;

xctassertnothrowspecific(expression, specificexception, format...)異常測試,當expression沒有發生具體異常、具體異常名稱的異常時通過測試,反之不通過;

xctassertnothrowspecificnamed(expression, specificexception, exception_name, format...)異常測試,當expression沒有發生具體異常、具體異常名稱的異常時通過測試,反之不通過

原文:

iOS單元測試斷言彙總

xctfail 任何嘗試都會測試失敗,是輸出的提示文字。xctassertnil expression,expression為空時通過,否則測試失敗。expression接受id型別的引數。xctassertnotnil expression,expression不為空時通過,否則測試失敗。expr...

單元測試斷言彙總

xctfail 任何嘗試都會測試失敗,是輸出的提示文字。後面都是這樣 xctassertnil expression,expression為空時通過,否則測試失敗。expression接受id型別的引數。xctassertnotnil expression,expression不為空時通過,否則測試...

OC 單元測試斷言

xctfail format 生成乙個失敗的測試 xctassertnil a1,format.為空判斷,a1為空時通過,反之不通過 xctassertnotnil a1,format 不為空判斷,a1不為空時通過,反之不通過 xctassert expression,format.當express...