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 插件分类