網站首頁 編程語言 正文
前言
前面一直使用命令行運行pytest用例,本篇來學下使用pytest.main()來運行測試用例
pytest.main()
- args 傳一個list對象,list 里面是多個命令行的參數
- plugins 傳一個list對象,list 里面是初始化的時候需注冊的插件
不帶參數運行
import pytest
# 等同于命令行執行 pytest
# 默認運行的是當前目錄及子目錄的所有文件夾的測試用例
pytest.main()
參數運行
- -s: 顯示程序中的 print/logging 輸出
- -v: 豐富信息模式, 輸出更詳細的用例執行信息
- -k: 運行包含某個字符串的測試用例。如:pytest -k add XX.py 表示運行 XX.py 中包含 add 的測試用例。
- -q: 簡單輸出模式, 不輸出環境信息
- -x: 出現一條測試用例失敗就退出測試。在調試階段非常有用,當測試用例失敗時,應該先調試通過,而不是繼續執行測試用例。
在命令行運行帶上 -s 參數
?pytest -s -x
pytest.main() 里面等價于
import pytest
# 帶上-s參數
pytest.main(["-s","-x"])
指定測試用例
指定運行 study 文件夾下的全部用例
pytest study
pytest.main() 里面等價于
import pytest
# 運行指定文件夾目錄
pytest.main(["study "])
運行指定的 study/test_77.py 下的全部用例
pytest study/test_77.py
pytest.main() 里面等價于
import pytest
# 運行指定py文件
pytest.main(["study/tset_77.py"])
運行指定的 study/test_77.py 下的某個用例
pytest study/test_77.py::tset_01
pytest.main() 里面等價于
import pytest
# 運行指定py文件下測試用例
pytest.main(["study/tset_77.py::test_01"])
指定plugins參數
# -*- coding: utf-8 -*-
import pytest
def test_01():
"""測試用例1"""
name = '小白'
age = 28
city = 'Beijing'
assert name == '小白'
assert age == 28
assert city == 'Beijing'
# 自定義插件
class MyPlugin(object):
def pytest_sessionstart(self):
print("*** test run start blog地址 https://blog.csdn.net/IT_heima")
if __name__ == '__main__':
# 通過 plugins 參數指定加載
pytest.main(['-s', '-v', 'test_77.py'], plugins=[MyPlugin()])
原文鏈接:https://blog.csdn.net/IT_heima/article/details/127459595
相關推薦
- 2022-08-05 lambda表達式集合list根據某個屬性去重
- 2022-08-06 python用pd.read_csv()方法來讀取csv文件的實現_python
- 2022-04-23 Element UI中table表格組件的居中問題
- 2022-06-19 Python?matplotlib實現條形統計圖_python
- 2021-11-16 使用Flutter定位包獲取地理位置_Android
- 2022-11-28 pytorch?dataset實戰案例之讀取數據集的代碼_python
- 2022-10-29 Centos8系統配置Redis實現開機自啟
- 2022-12-08 C++?Boost?PropertyTree示例超詳細講解_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支