日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無(wú)先后,達(dá)者為師

網(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

欄目分類
最近更新