如何安装、利用、激活、禁用pytest插件

2024-04-26 20:28:42 浏览数 (1)

在本文中,我们介绍如何安装和使用pytest第三方插件,对于如何自己开发pytest插件,我们后续写文继续更新。

通过python自带的pip命令,我们可以很轻易的安装、卸载pytest第三方插件:

安装pytest插件命令

代码语言:javascript复制
pip install pytest-plugin_name

卸载pytest插件命令

代码语言:javascript复制
pip uninstall pytest-plugin_name

注:plugin_name为pytest第三方插件名称

如果第三方pytest插件安装好了,pytest将会自动的发现和加载该插件,不需要你做过多的操作。

下面我们看一下一些常用的插件及介绍:

  • pytest-django: 为django应用编写测试,使用pytest集成
  • Pytest-twisted: 为twisted应用编写测试
  • Pytest-cov: 覆盖率报告,兼容分布式测试
  • pytest-xdist: 将测试分发到cpu和远程主机,以沙盒模式运行(允许分段错误存活),以loop on failing模式运行,在文件更改时自动重新运行失败的测试
  • Pytest-instafail: 在测试运行时报告失败。
  • Pytest-bdd: 使用bdd(行为驱动测试)编写测试。
  • Pytest-timeout: 根据函数标记或全局定义使测试超时
  • pytest-pep8: 使用pep8选项以启用pep8遵从性检查
  • Pytest-flakes: 使用pyflakes检查源代码
  • allure-pytest: 通过allure-pytest生成测试报告

为了查看pytest完整的插件列表,可以查看Pytest Plugin List — pytest documentation链接:

https://docs.pytest.org/en/8.1.x/reference/plugin_list.html#plugin-list

这里官方提供的数百种插件供你选择和使用。

在pytset中提供了其他方式来加载插件,例如在模块中使用pytest——plugins或conftest文件来加载,具体方式如下

代码语言:javascript复制
pytest_plugins = ("app.testsupport.myplugin")

这样当测试模块或conftest插件被加载时,pytest_plugins指定的插件也会被加载。

根据官方的说明:并不建议在非根conftest.py文件中使用pytest_plugins变量来加载指定的插件,所以这种方式大家了解一下,不熟悉pytest底层机制的人,不建议使用。

如何查看pytest插件是激活状态的?

通过下面的命令即可知道那些pytest插件是出于可用状态,自己试试命令吧,看输出什么信息:

代码语言:javascript复制
pytest --trace-config

如何禁用pytest插件?

我们可以通过下面的命令禁用pytest插件。

代码语言:javascript复制
pytest -p no:NAME

NAME为插件名称

注: 对于某些我们不需要的插件,但又不想卸载,那我们可以使用这个命令。

0 人点赞