我們在使用pytest框架寫用例打是哈,一定要特別注意,要按它的命名規范去寫用例。這樣框架才能找到哪些是用例需要執行,哪些用例不需要執行
pytest用例規則
- 測試文件以test_開頭 以test_結尾也可以
- 測試類以Test開頭,並且不能帶有init方法
- 測試函數以test_開頭
- 斷言使用assert
- 所有的包pakege必須要有_init_.py文件
- 以test_開頭的方法
(一)可以用cmd執行pytest,先到指定目錄,然后輸入
下面是cmd輸入的語法:
pytest執行用例規則
1.某個目錄下的所有的用例
pytest 文件名/
2.執行某一個py文件下用例
pytest 腳本名稱.py
3.按關鍵字匹配
pytest -k "dispach"
4.按節點運行
pytest test_class.py::test_func(這個就是運行test_class文件的test_func這個函數)
5.遇到錯誤時停止測試
pytest -x test_class.py
6.當用例錯誤個數達到指定的數量,就停止
pytest -maxfail = 1
怎么運行?
(二)下面是在pycharm里面的語法:
我是通過pycharm右擊,選擇run的,把我在上面寫的方法,替換到我下面的語句中就可以了
遇到錯誤停止:
if __name__ =="__main__": pytest.main(["-x", "test_class.py"])
錯誤個數統計是1的時候停止:
if __name__ =="__main__": pytest.main([’-s’, ‘pytest-demo.py’, ’–maxfail=1’])
:::指定測試用例運行 運行指定的函數
if __name__ =="__main__": pytest.main([’-s’,‘pytest-demo.py::test01’])
運行指定類中方法
if __name__ =="__main__": pytest.main([’-s’, ‘pytest-demo.py::TestCase::test_03’])
-s:顯示打印內容
if __name__ =="__main__": pytest.main([’-s’,‘pytest-demo.py’])