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. ECC数据结构

    在SM2 ECC算法中,有针对签名加密的数据结构,下面对这些结构进行分析 #define ECCref_MAX_BITS 512 #define ECCref_MAX_LEN ((ECCref_MAX ...

  2. 【Nginx】Nginx事件模块

    一.事件处理框架概述 事件处理框架所要解决的问题是如何收集.管理.分发事件.事件以网络事件和定时器事件为主,而网络事件中以TCP网络事件为主.事件处理框架需要在不同的操作系统内核中选择一种事件驱动机制 ...

  3. Error Code: 2006 - MySQL 鏈嶅姟鍣ㄥ凡绂荤嚎

    将sql文件导入到mysql时候,就一直报这个错误. 我试过网上各种方法都行不通. 最后将以下一句运行了一下就能够了,并且没有重新启动mysql. SET GLOBAL max_allowed_pac ...

  4. 鸟哥的Linux私房菜-----13、账号管理

  5. 初识mina框架

    step1:创建java工程,导入jar包 step2:在src下配置log4j.properties文件 log4j.rootLogger=DEBUG,MINA,file log4j.appende ...

  6. Mongodb for PHP教程之数据操作

    Mongodb的常用操作 参看手册,php官方的http://us2.php.net/manual/en/mongo.manual.php 也可以参看mongodb官方的教程 数据库连接 ⑴默认格式 ...

  7. Oracle11g表空间导入dmp数据

    如果你的表数据没有附带表空间和用户名,那么只要一句话 Imp {u_name}/{u_pwd}@{local_svrname} fromuser={from_user} touser={u_name} ...

  8. myecplise、ecplise项目空间优化

    1.代码自动提示补全 Window->preferences->Java->Editor->Content Assist 再右下角Auto activation trigger ...

  9. Codeforces 757 D. Felicity's Big Secret Revealed 状压DP

    D. Felicity's Big Secret Revealed   The gym leaders were fascinated by the evolutions which took pla ...

  10. HAProxy+Keepalived构建高可用负载均衡

    http://www.linuxidc.com/Linux/2012-03/55880.htm web1 IP 192.168.0.47 web2 IP 192.168.0.48 haproxy_ma ...