JUC學習筆記(九)
阿新 • • 發佈:2021-08-19
1.測試用例的識別及執行
- 測試檔案:test_*.py 和 *_test.py檔案
- 用例識別:Test*類包含的所有test_*的方法
不在class中的所有的test_*的方法
- pytest也可以執行unittest框架寫的用例和方法
2.pytest執行——失敗重新執行幾次
安裝:pip install pytest-rerunfailures
執行命令:pytest --reruns 3 -v test_one.py //重複執行3次並列印詳情
pytest -v --reruns 5 --reruns-delay 1test_one.py //-v是列印測試用例詳情 ,重新執行5次,間隔是1秒
3.pytest執行——一條測試用例中的有多條斷言,失敗也執行打印出來
為了防止某一條斷言失敗而不繼續執行
安裝:pip install pytest-assume
執行:pytest.assume(1==2)
pytest.assume(1==3)
4.setup和teardown
5.pytest-fixture
5.1pytest-fixture
適用場景:用例1需要先登入;用例2不需要登入;用例3需要登入(該場景setup、teardown無法實現)
使用方法:
- 在方法前面加@pytest.fixture();
- 在要適用的測試方法中傳入函式名(登入函式名)
- 在不需要傳入的就不寫函式名,直接執行
5.2conftest(公共模組,資料共享)
5.3mark(標記)
@pytest.mark.skip,跳過這個用例,可加條件skipif(除錯時、標記無法在某平臺執行、某版本不執行、或者外部資源不可用)
@pytest.mark.xfail,功能尚未實施或未修復,測試時預計會通過標記xpass,預計會失敗標記xfail,會在測試摘要中報告
mark還可以自定義標記只執行部分測試用例
6.多執行緒並行與分散式執行
7.生成測試報告pytest-html
allure生成的測試報告更美觀