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

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

網(wǎng)站首頁(yè) 編程語言 正文

pytest官方文檔解讀之安裝和使用插件的方法_python

作者:把蘋果咬哭的測(cè)試筆記 ? 更新時(shí)間: 2022-11-05 編程語言

本節(jié)討論安裝和使用第三方插件。關(guān)于編寫自己的插件,我們下一章繼續(xù)。

一、pip 安裝

就像安裝一些其他第三方庫(kù)一樣,使用pip也可以很容易地安裝第三方插件,pytest-NAME這是你要安裝的插件名稱:

# 安裝
pip install pytest-NAME
#卸載
pip uninstall pytest-NAME

比如我這里安裝一個(gè)pytest-xdist的插件:

第三方插件裝完就可以直接用了,pytest會(huì)自動(dòng)找到并集成它,不需要我們手動(dòng)激活它。

二、查找可用插件

pytest的第三方插件非常豐富,所以功能也是多種多樣的。下面列舉一些流行的插件:

  • pytest-django: 為django應(yīng)用程序編寫測(cè)試,使用pytest集成。
  • pytest-cov: 覆蓋報(bào)告,兼容分布式測(cè)試
  • pytest-xdist: 將測(cè)試分發(fā)到cpu和遠(yuǎn)程主機(jī),提高執(zhí)行效率
  • pytest-instafail: 在測(cè)試運(yùn)行時(shí)報(bào)告失敗
  • pytest-bdd: 使用行為驅(qū)動(dòng)測(cè)試編寫測(cè)試用例
  • pytest-timeout: 根據(jù)函數(shù)標(biāo)記或全局定義測(cè)試超時(shí)。
  • pytest-pep8: 啟用pep8合規(guī)性檢查
    ...

官方有一個(gè)完整插件列表,里面有針對(duì)不同pytestPython版本的最新測(cè)試狀態(tài),傳送門 在此。

此外,我們也可以在pytest- pypi.org search搜索插件。

插件非常多,后續(xù)遇到一些很實(shí)用或者很有趣的插件會(huì)單獨(dú)進(jìn)行分享。上面關(guān)于pytest-xdist分布式執(zhí)行的插件之前有過介紹,都添加到文章末尾的pytest合集里了,有需要的自取。

三、在測(cè)試模塊或者conftest文件中加載指定插件

我們可以使用pytest_plugins在測(cè)試模塊或conftest文件中加載指定插件:

# 可以是單個(gè)插件,就是一個(gè)字符串
pytest_plugins = "myapp.testsupport.myplugin"

# 也可以加載多個(gè),字符串的隊(duì)列
pytest_plugins = ("myapp.testsupport.tools", "myapp.testsupport.regression")

當(dāng)測(cè)試模塊或conftest插件被加載時(shí),指定的插件也會(huì)被加載。

值得注意的是:

  • 盡量不要在非根目錄的conftest.py文件中使用pytest_plugins變量來加載插件(開發(fā)插件時(shí)候繼續(xù)展開)
  • 自定義插件模塊的名稱不要使用pytest_plugins來命名

四、查看被激活的插件

如果想知道哪些插件在本地環(huán)境中是激活的,可以通過該命令:

pytest --trace-config

在測(cè)試頭部信息中會(huì)顯示激活的插件,它還會(huì)在加載本地插件時(shí)打印出conftest.py文件

五、注銷插件

我們可以阻止插件加載或注銷它們:

pytest -p no:NAME

這樣,后續(xù)就沒辦法進(jìn)行插件的激活/加載了。

如果想無條件地禁用一個(gè)項(xiàng)目的插件,可以在項(xiàng)目配置文件pytest.ini中添加這個(gè)選項(xiàng)即可:

[pytest]
addopts = -p no:NAME

文末附上合集的傳送門

pytest合集見鏈接

原文鏈接:https://www.cnblogs.com/pingguo-softwaretesting/p/16685564.html

欄目分類
最近更新