Pytest是一個比PyUnit更加復(fù)雜的測試框架菇夸,其將測試常用的內(nèi)容都包含進來了仪吧,如生成測試報告、生成覆蓋率報告等薯鼠。而且Pytest提供插件功能择诈,很多開發(fā)人員可以通過開發(fā)Pytest插件來擴展Pytest的功能出皇。
Pytest也不是Python自帶的模塊羞芍,需要自行安裝。推薦使用PIP進行安裝涩金,安裝命令如下:
安裝完成后就可以在系統(tǒng)的安裝目錄看到pytest和py.test兩個文件谱醇。這兩個文件只是文件名不同,內(nèi)容是一樣的步做,它們都是Python腳本文件。
pip install pytest
1全度、測試用例
有兩種定義測試用例的方法煮剧,第一種方法是定義一個以test_開頭的函數(shù)将鸵,這樣的函數(shù)默認(rèn)都會被認(rèn)為是測試用例。
第二種方法是定義一個以Test開頭的類顶掉,該類中所有以test開頭的函數(shù)都被認(rèn)為是一個測試用例草娜。
2痒筒、選擇執(zhí)行的測試用例
可以像以前一樣宰闰,通過指定模塊名來運行測試用例。假定當(dāng)前目錄下有兩個文件移袍,test_a.py和test_b.py,分別包含一些測試用例老充。test_a.py的內(nèi)容如下:
test_b.py的內(nèi)容如下:
如果希望執(zhí)行test_a.py中的兩個測試用例,可以使用下面的命令:
如果希望執(zhí)行test_a.py和test_b.py中的所有測試用例啡浊,可以使用下面的命令:
如果希望僅執(zhí)行test_a.py中的test_case_a_1測試用例觅够,可以使用下面的命令:
如果希望執(zhí)行test_a.py中的test_case_a_1和test_b.py中的test_case_b_2這兩個測試用例,可以使用下面的命令:
如果對于所選中的測試用例不是特別有把握蔚约,可以使用參數(shù)--setup-plan,這樣測試用例不會真正執(zhí)行涂籽,只是列出計劃執(zhí)行的測試用例列表砸抛。
需要注意的是评雌,測試用例文件的名字推薦以test_開頭直焙,或者以_test結(jié)尾;不同目錄下不能有相同的文件奔誓。