pytest特色

1、fixture的特点

  • fixture是pytest特有的功能,其特点如下:

必须用pytest.fixture装饰器装饰;fixture有明确的名字,在其他函数(function,默认),模块(module),类(class)或整个工程(session)调用它时会被激活;

  • function:每个test都运行,默认是function的scope class:每个class的所有test只运行一次
  • class:每个测试类之前执行一次
  • module:每个module的所有test只运行一次
  • session:每个session只运行一次
  • 它自身也可以调用其他的fixture;
  • 可以和测试函数写在同一个文件里;
  • fixture看做是资源,在你的测试用例执行之前需要去配置这些资源,执行完后需要去释放资源;
  • fixture还提供了参数化功能,根据配置和不同组件来选择不同的参数;

2、conftest.py:共享fixture功能

如果在实现测试期间,要使用多个测试文件中的fixture函数,则可以将其移动到conftest.py文件中。 并且,不需要导入要在测试中使用的fixture,它会自动被pytest发现。 fixture功能的发现从测试类开始,然后是测试模块,然后是conftest.py文件,最后是内置和第三方插件。

pytest插件

pytest真的很强大,下面列出其几点强大之处,方便大家在使用到pytest的时候做参考。

1、pytest-xdist

功能:

开启多个worker进程,同时执行多个测试用例,达到并发运行的效果,大大提升构建效率。

官网介绍:

https://pypi.org/project/pytest-xdist/

2、pytest-allure-adaptor

功能:

  生成漂亮的allure报告,持续构建推荐使用

官网介绍:

  https://pypi.org/project/pytest-allure-adaptor/

3、pytest-html

功能:

  生成html格式报告,本地调试推荐使用

官网介绍:

https://pypi.org/project/pytest-html/

4、pytest-rerunfailures

功能:

  自动重跑失败用例

官网介绍:

https://pypi.org/project/pytest-rerunfailures/3.1/

5、pytest-cache

功能:

  重跑上次失败的用例,持续集成中很实用,提高分析效率,强烈推荐。

官网介绍:

  https://pypi.org/project/pytest-cache/

6、pytest-ordering

功能:

  可指定一个测试套中的所有用例执行顺序。

官网介绍:

  https://pypi.org/project/pytest-ordering/

7、pytest-sugar

功能:

  改变了pytest的默认外观,增加了一个进度条,并立即显示失败的测试。

官网介绍:

  https://pypi.org/project/pytest-sugar/
  

pytest特色与实用插件的更多相关文章

  1. Android Studio 实用插件整理

    首先说一下安装方法: 上图片: 首先点击Android stuido 菜单 File->Settings 进入上图界面: 区域1:你当前已经安装了的插件 区域3:在线安装 区域2:其实和区域3是 ...

  2. Notepad++ 几款实用插件简介,让你的 Notepad++ 如虎添翼

    Notepad++ 是一款非常优秀的文本编辑器,非常适合编辑源代码.Notepad++ 安装时已经附带有 Compare 等优秀插件,通过其 Plugin Manager 可以下载更多实用插件. 一. ...

  3. leaflet实用插件整理

    leaflet实用插件整理: https://www.giserdqy.com/webgis/leaflet/4920/leaflet%E5%AE%9E%E7%94%A8%E6%8F%92%E4%BB ...

  4. Eclipse的实用插件

    Decompiler PyDev ShellEd AnyEdit SonarLint PropertiesEditor System and Desktop Search 其它实用插件等工作中用到了再 ...

  5. Eclipse实用插件

    Eclipse实用插件 安装:Help - Eclipse Marketplace 查看图片:QuickImage 主题:Darkest Dark 代码风格:https://blog.csdn.net ...

  6. 如何为你的IDEA安装插件——几个实用插件推荐

    文章目录 如何为你的IDEA安装插件--几个实用插件推荐 安装插件 插件推荐 1.Background Image Plus 2.Translation 3.CodeGlance 4.Rainbow ...

  7. 浅析MyBatis(三):聊一聊MyBatis的实用插件与自定义插件

    在前面的文章中,笔者详细介绍了 MyBatis 框架的底层框架与运行流程,并且在理解运行流程的基础上手写了一个自己的 MyBatis 框架.看完前两篇文章后,相信读者对 MyBatis 的偏底层原理和 ...

  8. vim实用插件

    转载:Vim 实用插件推荐(2017) - 知乎 (zhihu.com) 1.插件管理器 ----------------------------------------- Vundle.vim - ...

  9. 简单的jQuery 四级分类实用插件

    前言 最近因需要自己封装了一个很简单的四级分类的jQuery插件,主要用于后台数据的传输和获取.接下来就分享一下这个实用的插件吧. 正文 老规矩,先看一下效果,这个就很丑了,没有美化的,因为主要还是用 ...

随机推荐

  1. Java日志框架-Logback手册中文版以及官方配置文档教程

    Logback手册中文版:(链接: https://pan.baidu.com/s/1bpMyasR 密码: 6u5c),虽然版本有点旧,但是大体意思差不多,先用中文版了解个大概,然后一切最新的配置以 ...

  2. Java后端技术书单

    写博客记录技术上使用的各种问题,这个只能算是一个打游击. 如果要把一个知识学透,最有效的方式就是系统学习,而系统学习就是看书,书本上有清晰的学习路线以及相应的技术栈. 下面是我收集的Java后端的技术 ...

  3. 浏览器websocket

    使用浏览器,PHP 来构建的应用,发现都是每次浏览器发送一次http 请求,PHP 回一个响应. 这样,后端的PHP 在处理多次http请求是,每次都是不同的进程在处理. 这就加大了开销, 而且,PH ...

  4. DLR之 ExpandoObject和DynamicObject的使用演示样例

    ExpandoObject :动态的增删一个对象的属性,在低层库(比如ORM)中非常实用.因为ExpandoObject实现了IDictionay<string, object>接口,常见 ...

  5. ASP.NET MVC中为DropDownListFor设置选中项的方法

    在MVC中,当涉及到强类型编辑页,如果有select元素,需要根据当前Model的某个属性值,让Select的某项选中.本篇只整理思路,不涉及完整代码. □ 思路 往前台视图传的类型是List< ...

  6. Java小白手记:SSH

    以下内容只是一个小白菜鸟的理解和总结,目的仅在于梳理思路. 13年的时候,我就说要学JAVA,有个C++高手同事赞许地说:"嗯,不错,SSH..."我不禁肃然起敬.SSH!多么高大 ...

  7. JS文件中引用另一个JS文件

    1.生产项目上遇到一个Bug,需要修改JS文件,添加Jquery代码,但是原来的页面没有添加对Jquery文件的引用,无法修改原来的页面(自动生成的HTML) 这就需要在JS文件中添加对Jquery文 ...

  8. Django的各种初识

    1,django项目的各个文件的介绍 1.1>项目的根目录:是各个子文件的根目录,在各个文件相互导入文件的时候使用 1.2>配置文件:为django的各个文件配置相关的各种默认配置 1.3 ...

  9. 【bzoj4320】ShangHai2006 Homework

    若Y小于等于sqrt(300000),暴力,对所有的插入的数都更新mn[i]. 若Y大于sqrt(300000),枚举kY,用并查集维护>=i的第一个数,这样只支持删除操作是O(1),然后倒着枚 ...

  10. iptraf 网卡 ip 端口 监控 netstat 关闭端口方法

    18 commands to monitor network bandwidth on Linux server – BinaryTides https://www.binarytides.com/l ...