生活随笔
收集整理的這篇文章主要介紹了
pytest第一版 入门学习
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、pytest 簡介
pytest是一個非常成熟的單元框架,比unittest更靈活,容易上手。pytest可以和selenium,request,appium結合實現web自動化,接口自動化,app自動化。pytest可以實現測試用例的跳過以及reruns失敗用例的重試。pytest可以和allure生成非常美觀的測試報告。pytest可以和jenkins持續集成。pytest有很多強大的插件,并且這些插件能夠實現很多的使用的操作。
常用的插件有:
pytestpytest-html (生成html格式的自動化測試報告)pytest.xdist (測試用例分布式執行,多cpu分發)pytest-ordering (用于改變測試用例的執行順序)pytest-rerunfailures (用于失敗后重跑)allure-pytest (用于生成美觀的測試報告)
二、使用pytest, 默認的測試用例的規則以及基礎應用
模塊名必須以test_開頭或者_test結尾(此處的模塊名指的是py文件的名字)測試類必須以Test開頭,并且不能有init方法測試方法必須以test開頭
三、pytest測試用例的運行方式
主函數模式 運行所有用例 pytest.main() pytest.main([]) 參數是放在list里傳入的 命令行模式 運行所有用例 pytest指定模塊 pytest -vs xxx.py指定目錄 pytest -vs ./xxx 通過讀取pytest.ini配置文件進行 pytest.ini 這個文件它是pytest單元測試框架的核心配置文件位置: 一般放在項目的根目錄編碼: 必須是ANSI,可以使用notpad++修該編碼格式作用: 改變pytest默認的行為運行的規則:不管是主函數模式運行,還是命令行運行,都會去讀取這個配置文件 [pytest]
addopts = -vs
testpaths = /tests
python_files = test_*.py
python_classes = Test*
python_functions= test_* start
markers =smoke: 冒煙測試usermanage: 用戶商品管理productmanage: 商品管理模塊
參數詳情
-s: 表示輸出調試信息,包括print打印的信息-v: 顯示更詳細的信息-vs: 這兩個參數可以一起使用-n: 支持多線程或者分布式運行測試用例–reruns num: 失敗用例重跑 num代表重跑的次數-x: 表示只要一個用例報錯,那么測試停止–maxfail=2 出現兩個用例失敗就停止-k: 根據測試用例的部分字符串制定測試用例–html ./report/report.html: 生成html的測試報告
四、pytest執行測試用例的順序是什么樣的
pytest 默認從上到下執行
可通過@pytest.mark.run(order=3) order可以控制當前用例第幾個執行
改變默認的執行順序: 使用mark標記
五、如何分組執行
smoke: 冒煙測試,分布在各個模塊里面
pytest -m “smoke”
pytest -m “smoke or usermanage”
六、pytest 跳過測試用例
無條件跳過 @pytest.mark.skip(reason=‘xxx’) 有條件跳過 @pytest.mark.skipif(age>=18, reason=‘xxx’)
總結
以上是生活随笔為你收集整理的pytest第一版 入门学习的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。