Skip to content

Pytest 插件


简介

Pytest 插件是 Python 包或模块,可以提供额外的功能、自定义行为或报告,可以根据项目的需求选择并使用不同的插件。


Pytest 常用的插件

  • 控制用例的执行顺序(重点):pip install pytest-ordering
  • 分布式并发执行测试用例(重点):pip install pytest-xdist
  • 控制用例的依赖关系(了解):pip install pytest-dependency
  • 失败重跑(了解):pip install pytest-rerunfailures
  • 多重较验(了解):pip install pytest-assume
  • 用例随机执行(了解):pip install pytest-random-order
  • 测试报告(了解):pip install pytest-html

Pytest 插件分类

Pytest 插件可以按其功能和用途进行分类。


外部插件

通过 pip install 命令从 PyPI 或其他 Python 包索引安装的插件。

外部插件是独立于项目的,可以在项目外安装它们并在项目中引用。

例如,可以使用 pip 来安装 pytest-html 插件:pip install pytest-html。一旦安装,可以在任何项目中使用它来生成 HTML 测试报告。


本地插件

本地插件是与特定项目相关的,通常是存储在项目目录中的 conftest.py 文件中。

conftest.py 可以包含夹具(fixtures)、自定义命令行选项、标记(markers)、钩子函数等。

这些插件仅对特定项目可见,并在项目的测试中使用。它们不需要额外的安装步骤,只需在项目中定义和使用。


内置插件

Pytest 内置了一些插件,这些插件提供了许多常见的功能和扩展。这些插件存储在 pytest 的内部目录(通常是_pytest目录)中,并自动加载,无需额外的安装或配置。

例如,pytest-cov 是一个内置插件,它用于测试覆盖率分析。可以使用--cov选项来启用测试覆盖率分析,而无需额外安装插件。


总结

  • pytest 插件分类