pytest前置后置條件


已知被測對象demo.py

 

#!/usr/bin/python # -*- coding: utf-8 -*- def add(a, b): return a+b def minus(a, b): return a-b

1.測試函數案例 test_demo_module.py

  • 文件必須要test_*.py*_test.py來命名
  • 測試case命名必須要test開頭,最好是test_
  • 判斷使用assert
  • setup_module, 所有case執行的前置條件,只運行一次
  • teardown_module, 所有case執行的后置條件,只運行一次
  • setup_function, 每個測試用例的前置條件
  • teardown_function, 每個測試用例的后置條件

 

2.測試類案例

test_demo_class.py

  • 文件必須要test_*.py*_test.py來命名
  • 測試類命名必須要Test開頭
  • 測試case命名必須要test開頭,最好是test_
  • 判斷使用assert
  • setup_class, 所有case執行的前置條件,只運行一次
  • teardown_class, 所有case執行的后置條件,只運行一次
  • setup, 每個測試用例的前置條件
  • teardown, 每個測試用例的后置條件

 

3. pytest執行命令:
  • pytest: 查找當前目錄及子目錄下所有test_*.py*_test.py的測試文件,然后一一執行文件內以test開頭的函數
  • pytest ut/: 查找ut目錄及子目錄下所有test_*.py*_test.py的測試文件,然后一一執行文件內以test開頭的函數
  • pytest test_demo_class.py: 可以指定測試文件
  • pytest test_demo_module.py::test_add: 執行指定測試文件中的測試case
  • pytest test_demo_class.py::TestDemo[::test_add]: 執行指定測試文件中的測試類[中的測試case]
  • pytest -k EXPRESSION: 執行和表達式匹配的測試案例
4. 常用參數

  -s : 打印測試案例中print信息

  -q : 只顯示結果[. F E S], 不展示過程

  -x : 遇到失敗案例,停止測試

  --maxfail=num: 失敗num個案例后,停止測試


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM