返回: Pytest权威教程

安装和使用插件

本节讨论如何安装和使用第三方插件。有关编写自己的插件的信息,请参阅编写插件。

安装第三方插件可以通过以下方式轻松完成pip

pip install pytest-NAME
pip uninstall pytest-NAME

如果安装了插件,则pytest自动查找并集成它,无需激活它。

这是一些常用插件列表:

  • pytest-django:为django应用程序编写测试。
  • pytest-twisted:为twisted应用程序编写测试,启动反应堆并处理测试函数的延迟。
  • pytest-cov:覆盖率报告,与分布式测试兼容
  • pytest-xdist:将测试分发到CPU和远程主机,以盒装模式运行,允许分段故障,在looponfailing模式下运行,自动重新运行文件更改的失败测试。
  • pytest-instafail:在测试运行期间报告失败。
  • pytest-bdd使用行为驱动的测试编写测试。
  • 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

并将获得一个扩展的测试标题,显示激活的插件及其名称。它还会在加载时打印本地插件aka[conftest.py文件。

按名称取消/取消注册插件

你可以阻止插件加载或取消注册:

pytest -p no:NAME

这意味着任何后续尝试激活/加载命名插件都不起作用。

如果要无条件禁用项目插件,可以将此选项添加到pytest.ini文件中:

[pytest]
addopts = -p no:NAME

或者,仅在某些环境中禁用它(例如在CI服务器中),可以将PYTEST_ADDOPTS环境变量设置为。-p no:name

请参阅查找有关如何获取插件名称的活动插件。

Pytest权威教程17-安装和使用插件的更多相关文章

  1. Pytest权威教程(官方教程翻译)

    Pytest权威教程01-安装及入门 Pytest权威教程02-Pytest 使用及调用方法 Pytest权威教程03-原有TestSuite的执行方法 Pytest权威教程04-断言的编写和报告 P ...

  2. Pytest权威教程21-API参考-04-钩子(Hooks)

    目录 钩子(Hooks) 引导时的Hook方法 初始化时的Hook方法 测试运行时的Hook方法 收集用例时的Hook方法 生成测试结果时的Hook方法 调试/交互Hook方法 返回: Pytest权 ...

  3. Pytest权威教程19-编写钩子(Hooks)方法函数

    目录 编写钩子(Hooks)函数 钩子函数验证和执行 firstresult: 遇到第一个有效(非None)结果返回 hookwrapper:在其他钩子函数周围执行 钩子(Hooks)函数排序/调用示 ...

  4. Pytest权威教程25-配置

    目录 配置 命令行选项和配置文件设置 初始化:确定ROOTDIR和INIFILE 寻找rootdir 如何更改命令行选项默认值 内置的配置文件选项 返回: Pytest权威教程 配置 命令行选项和配置 ...

  5. Pytest权威教程01-安装及入门

    目录 安装及入门 安装 Pytest 创建你的第一个测试用例 执行多条测试用例 断言抛出了指定异常 使用类组织多条测试用例 函数测试中请求使用独立的临时目录 进一步阅读 返回: Pytest权威教程 ...

  6. Pytest权威教程05-Pytest fixtures:清晰 模块化 易扩展

    目录 Pytest fixtures:清晰 模块化 易扩展 Fixtures作为函数参数使用 Fixtures: 依赖注入的主要例子 conftest.py: 共享fixture函数 共享测试数据 生 ...

  7. Pytest权威教程10-捕获警告信息

    目录 捕获警告信息 @pytest.mark.filterwarnings 禁用警告摘要 完全禁用警告捕获 弃用警告和待命记录警告 确保代码触发弃用警告 用警告函数断言警告 录制警告 自定义失败消息 ...

  8. Pytest权威教程13-Fixture方法及测试用例的参数化

    目录 Fixture方法及测试用例的参数化 @pytest.mark.parametrize:参数化测试函数 基本的pytest_generate_tests例子 更多示例 返回: Pytest权威教 ...

  9. Pytest权威教程14-缓存:使用跨执行状态

    目录 缓存:使用跨执行状态 使用方法 首先只重新运行故障或故障 上次运行中没有测试失败时的行为 新的config.cache对象 检查缓存内容 清除缓存内容 逐步修复失败用例 unittest.Tes ...

随机推荐

  1. js 简单的滑动2

    js 简单的滑动教程(二)   作者:Lellansin 转载请标明出处,谢谢 现在我们让滑动多一个功能,三张图.点击左边向左滑动,点右向右滑,碰到临界值的时候可以循环滑动 原理也很将简单,用posi ...

  2. Spring Boot + RabbitMQ 配置参数解释

    最近生产RabbitMQ出了几次问题,所以抽时间整理了一份关于Spring Boot 整合RabbitMQ环境下的配置参数解释,通过官网文档和网上其他朋友一些文章参考归纳整理而得,有错误之处还请指正~ ...

  3. wc命令——Linux系统高效数据统计工具

    wc(world count)是一个统计文件字词,字节,行数的Linux命令,它可以帮我们非常方便的统计以上信息. 主要参数 常见参数如下: -c 统计字节数. -l 统计行数. -m 统计字符数.这 ...

  4. js 的七大原则--单一原则、开闭原则、替换原则(一)

    一.前言: js 的七大设计原则: 1.单一原则 2.开闭原则 3.里氏替换原则 4.依赖倒转原则 5.接口隔离原则 6.合成复用原则 7.迪米尔法则 二.单一原则 1.定义:单一原则就是一个对象或者 ...

  5. JavaScript 数组去重的那几种方法

    数组去重是最常见的面试题,现在总结一下我所知道的几种 首先第一个就是es5 最常见的循环比较 var array= [1, 1, 2]; function test(nums) { for (var ...

  6. HBuilderX打包成安卓或苹果app之后的调试问题,避免每次都要打包

    一.使用VScode安装 Live Server插件 二.使用:安装成功后---->>新建一个index.html 写入内容如下图所示 注:href地址是你在电脑上启动该项目的访问地址(此 ...

  7. sql server 获取某一字段分组数据的前十条记录

    1.sql 语法 select m, n from ( select row_number () over (partition by m order by n desc) rn,--以m分组,分组内 ...

  8. iOS应用图片尺寸制作脚本

    1.前提说明 通常 2.代码使用说明 2.1 脚本基本代码 #!/bin/sh iPhoneIcon() { sips -z 30 25 if_connected_green.png --out ./ ...

  9. spring 自定义schema 加载异常 White spaces are required between publicId and systemId.

    spring 项目启动报错 报错日志如下: Caused by: org.springframework.beans.factory.xml.XmlBeanDefinitionStoreExcepti ...

  10. Python学习日记(二十三) 类命名空间和组合

    类命名空间 在一个类中它的函数(方法)属于动态属性,直接定义的变量属于静态属性 首先先定义一个类,并在这个类里面加入静态变量.属性等然后将一个对象实例化 class Fighter: #定义一个战机的 ...