pytest 插件-如何安裝和使用插件

2022-03-21 15:35 更新

本節(jié)討論安裝和使用第三方插件。 要編寫(xiě)自己的插件,請(qǐng)參閱編寫(xiě)插件。

使用 pip 可以輕松安裝第三方插件:

pip install pytest-NAME
pip uninstall pytest-NAME

如果安裝了插件,pytest會(huì)自動(dòng)找到并集成,無(wú)需激活。

以下是一些流行插件的小注釋列表:

  • ?pytest-django?:使用 pytest 集成為 django 應(yīng)用程序編寫(xiě)測(cè)試。
  • ?pytest-twisted?:為?twisted?的應(yīng)用程序編寫(xiě)測(cè)試,啟動(dòng)反應(yīng)器并處理來(lái)自測(cè)試函數(shù)的延遲。
  • ?pytest-cov?:覆蓋率報(bào)告,兼容分布式測(cè)試
  • ?pytest-xdist?:將測(cè)試分發(fā)到 CPU 和遠(yuǎn)程主機(jī),以允許在分段錯(cuò)誤中幸存的盒裝模式運(yùn)行,以 ?looponfailing模式運(yùn)行,自動(dòng)重新運(yùn)行對(duì)文件更改的失敗測(cè)試。
  • ?pytest-instafail?:在測(cè)試運(yùn)行發(fā)生時(shí)報(bào)告失敗。
  • ?pytest-bdd?:使用行為驅(qū)動(dòng)測(cè)試編寫(xiě)測(cè)試。
  • ?pytest-timeout?:根據(jù)功能標(biāo)記或全局定義超時(shí)測(cè)試。
  • ?pytest-pep8?:?jiǎn)⒂?nbsp;?PEP8? 合規(guī)性檢查的 ?--pep8? 選項(xiàng)。
  • ?pytest-flakes?:使用 ?pyflakes ?檢查源代碼。

在測(cè)試模塊或 conftest 文件中Requiring/Loading插件

你可以使用?pytest_plugins?在測(cè)試模塊或?conftest?文件中?require?插件:

pytest_plugins = ("myapp.testsupport.myplugin",)

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

不推薦在非根文件?conftest.py?中要求插件使用?pytest_plugins?變量。

?pytest_plugins?的名稱是保留的,不應(yīng)該用作自定義插件模塊的名稱。

找出哪些插件處于活動(dòng)狀態(tài)

如果您想找出您的環(huán)境中哪些插件處于活動(dòng)狀態(tài),您可以鍵入:

pytest --trace-config

并將獲得一個(gè)擴(kuò)展的測(cè)試標(biāo)頭,其中顯示已激活的插件及其名稱。 它還將在加載本地插件時(shí)打印 ?conftest.py? 文件。

按名稱Deactivating / unregistering插件

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

pytest -p no:NAME

這意味著任何后續(xù)嘗試激活/加載命名插件都將不起作用。

如果您想無(wú)條件地禁用項(xiàng)目的插件,可以將此選項(xiàng)添加到您的 ?pytest.ini? 文件中:

[pytest]
addopts = -p no:NAME

或者,要僅在某些環(huán)境中禁用它(例如在 ?CI服務(wù)器中),您可以將 ?PYTEST_ADDOPTS環(huán)境變量設(shè)置為-p no:name?


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)