Pytest官方教程-18-安裝和使用插件

目錄:

  1. 安裝及入門
  2. 使用和調用方法
  3. 原有TestSuite使用方法
  4. 斷言的編寫和報告
  5. Pytest fixtures:清晰 模塊化 易擴展
  6. 使用Marks標記測試用例
  7. Monkeypatching/對模塊和環境進行Mock
  8. 使用tmp目錄和文件
  9. 捕獲stdout及stderr輸出
  10. 捕獲警告信息
  11. 模塊及測試文件中集成doctest測試
  12. skip及xfail: 處理不能成功的測試用例
  13. Fixture方法及測試用例的參數化
  14. 緩存: 使用跨執行狀態
  15. unittest.TestCase支持
  16. 運行Nose用例
  17. 經典xUnit風格的setup/teardown
  18. 安裝和使用插件
  19. 插件編寫
  20. 編寫鉤子(hook)方法
  21. 運行日志
  22. API參考
    1. 方法(Functions)
    2. 標記(Marks)
    3. 鉤子(Hooks)
    4. 裝置(Fixtures)
    5. 對象(Objects)
    6. 特殊變量(Special Variables)
    7. 環境變量(Environment Variables)
    8. 配置選項(Configuration Options)
  23. 優質集成實踐
  24. 片狀測試
  25. Pytest導入機制及sys.path/PYTHONPATH
  26. 配置選項
  27. 示例及自定義技巧
  28. Bash自動補全設置

安裝和使用插件

本節討論如何安裝和使用第三方插件。有關編寫自己的插件的信息,請參閱編寫插件。

安裝第三方插件可以通過以下方式輕松完成pip

pip install pytest-NAME
pip uninstall pytest-NAME

如果安裝了插件,則pytest自動查找并集成它,無需激活它。

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

  • pytest-django:使用pytest集成為django應用程序編寫測試。
  • pytest-twisted:為扭曲的應用程序編寫測試,啟動反應堆并處理測試函數的延遲。
  • pytest-cov:覆蓋率報告,與分布式測試兼容
  • pytest-xdist:將測試分發到CPU和遠程主機,以盒裝模式運行,允許分段故障,在looponfailing模式下運行,自動重新運行文件更改的失敗測試。
  • pytest-instafail:在測試運行期間報告失敗。
  • pytest-bddpytest-konira 使用行為驅動的測試編寫測試。
  • pytest-timeout:根據函數標記或全局定義進行超時測試。
  • pytest-pep8--pep8啟用PEP8合規性檢查的選項。
  • pytest-flakes:用pyflakes檢查源代碼。
  • oejskit:在實時瀏覽器中運行javascript unittests的插件。

要查看具有針對不同pytest和Python版本的最新測試狀態的所有插件的完整列表,請訪問plugincompat

你還可以通過pytest-pypi.org搜索發現更多插件。

在測試模塊或conftest文件中要求/加載插件

你可以在測試模塊或conftest文件中要求插件,如下所示:

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

加載測試模塊或conftest插件時,也會加載指定的插件。

注意

pytest_plugins不建議使用非根conftest.py文件中使用變量的 插件。請參閱 “編寫插件”部分中的完整說明

注意

該名稱pytest_plugins是保留的,不應用作自定義插件模塊的名稱。

找出哪些插件是活動的

如果要查找環境中哪些插件處于活動狀態,可以鍵入:

pytest --trace-config

并將獲得一個擴展的測試標題,顯示激活的插件及其名稱。它還會在加載時打印本地插件akaconftest.py文件。

按名稱取消/取消注冊插件

你可以阻止插件加載或取消注冊:

pytest -p no:NAME

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

如果要無條件禁用項目插件,可以將此選項添加到pytest.ini文件中:

[pytest]
addopts = -p no:NAME

或者,僅在某些環境中禁用它(例如在CI服務器中),可以將PYTEST_ADDOPTS環境變量設置為 。-p no:name

請參閱查找有關如何獲取插件名稱的活動插件。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容