網(wǎng)站首頁(yè) 編程語(yǔ)言 正文
Python?pytest.main()運(yùn)行測(cè)試用例_python
作者:愛(ài)學(xué)習(xí)de測(cè)試小白 ? 更新時(shí)間: 2023-01-15 編程語(yǔ)言前言
前面一直使用命令行運(yùn)行pytest用例,本篇來(lái)學(xué)下使用pytest.main()來(lái)運(yùn)行測(cè)試用例
pytest.main()
- args 傳一個(gè)list對(duì)象,list 里面是多個(gè)命令行的參數(shù)
- plugins 傳一個(gè)list對(duì)象,list 里面是初始化的時(shí)候需注冊(cè)的插件
不帶參數(shù)運(yùn)行
import pytest
# 等同于命令行執(zhí)行 pytest
# 默認(rèn)運(yùn)行的是當(dāng)前目錄及子目錄的所有文件夾的測(cè)試用例
pytest.main()
參數(shù)運(yùn)行
- -s: 顯示程序中的 print/logging 輸出
- -v: 豐富信息模式, 輸出更詳細(xì)的用例執(zhí)行信息
- -k: 運(yùn)行包含某個(gè)字符串的測(cè)試用例。如:pytest -k add XX.py 表示運(yùn)行 XX.py 中包含 add 的測(cè)試用例。
- -q: 簡(jiǎn)單輸出模式, 不輸出環(huán)境信息
- -x: 出現(xiàn)一條測(cè)試用例失敗就退出測(cè)試。在調(diào)試階段非常有用,當(dāng)測(cè)試用例失敗時(shí),應(yīng)該先調(diào)試通過(guò),而不是繼續(xù)執(zhí)行測(cè)試用例。
在命令行運(yùn)行帶上 -s 參數(shù)
?pytest -s -x
pytest.main() 里面等價(jià)于
import pytest
# 帶上-s參數(shù)
pytest.main(["-s","-x"])
指定測(cè)試用例
指定運(yùn)行 study 文件夾下的全部用例
pytest study
pytest.main() 里面等價(jià)于
import pytest
# 運(yùn)行指定文件夾目錄
pytest.main(["study "])
運(yùn)行指定的 study/test_77.py 下的全部用例
pytest study/test_77.py
pytest.main() 里面等價(jià)于
import pytest
# 運(yùn)行指定py文件
pytest.main(["study/tset_77.py"])
運(yùn)行指定的 study/test_77.py 下的某個(gè)用例
pytest study/test_77.py::tset_01
pytest.main() 里面等價(jià)于
import pytest
# 運(yùn)行指定py文件下測(cè)試用例
pytest.main(["study/tset_77.py::test_01"])
指定plugins參數(shù)
# -*- coding: utf-8 -*-
import pytest
def test_01():
"""測(cè)試用例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__':
# 通過(guò) plugins 參數(shù)指定加載
pytest.main(['-s', '-v', 'test_77.py'], plugins=[MyPlugin()])
原文鏈接:https://blog.csdn.net/IT_heima/article/details/127459595
相關(guān)推薦
- 2022-04-01 詳解Prometheus自動(dòng)發(fā)現(xiàn)之file_sd_config
- 2022-09-10 C#實(shí)現(xiàn)自定義線程池實(shí)例代碼_C#教程
- 2022-07-20 C/C++舉例講解關(guān)鍵字的用法_C 語(yǔ)言
- 2022-02-16 C語(yǔ)言實(shí)現(xiàn)wave波形_C 語(yǔ)言
- 2022-10-17 React報(bào)錯(cuò)信息之Expected?an?assignment?or?function?call?
- 2022-08-30 五個(gè)Python命令使用的小妙招分享_python
- 2022-06-26 Python使用Tkinter?GUI實(shí)現(xiàn)輸入驗(yàn)證功能_python
- 2022-09-04 centos搭建部署docker環(huán)境的詳細(xì)步驟_docker
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過(guò)濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡(jiǎn)單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對(duì)象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支