測(cè)牛學(xué)堂:軟件測(cè)試python學(xué)習(xí)總結(jié)之unittest的斷言寫法!
2023-03-05 16:24 作者:測(cè)牛學(xué)堂 | 我要投稿
unitTest斷言
斷言,讓程序代替認(rèn)為判斷測(cè)試程序執(zhí)行結(jié)果是否符合預(yù)期結(jié)果的過程。
斷言使用可以提高測(cè)試效率,實(shí)現(xiàn)自動(dòng)化測(cè)試。
常用的斷言
斷言有很多,但是我們常用的先學(xué)習(xí)了解兩個(gè)即可。
1 assertEqual(預(yù)期結(jié)果,實(shí)際結(jié)果)
判斷預(yù)期結(jié)果和實(shí)際結(jié)果是否相等。如果相等,用例通過。
如果不相等,拋出異常,用例不通過。
2 assertIn(預(yù)期結(jié)果,實(shí)際結(jié)果)
判斷預(yù)期記過是否包含在實(shí)際結(jié)果中。如果存在,用例通過。
如果不存在,拋出異常,用例不通過。
代碼示例:
注意,測(cè)試用例的兩個(gè)參數(shù),都是后面是否等于前面,后面是否包含前面。
unitTest中的參數(shù)化
通過參數(shù)化,可以用參數(shù)的方式來傳遞數(shù)據(jù),從而實(shí)現(xiàn)數(shù)據(jù)和腳本分離。并且可以實(shí)現(xiàn)用例的重復(fù)執(zhí)行。
unitTest本身不提供參數(shù)化的功能,通過第三方插件parameterized實(shí)現(xiàn)。
1 安裝第三方插件:
pip install parameterized
2 導(dǎo)包
3 修改測(cè)試方法,將測(cè)試方法中的測(cè)試數(shù)據(jù)使用變量表示
4 組織測(cè)試數(shù)據(jù),格式用元組的形式,一個(gè)元組就是一組測(cè)試數(shù)據(jù)
5 測(cè)試方法中使用裝飾器進(jìn)行參數(shù)化
代碼示例: