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. git服务端安装

    Windows平台下Git服务器搭建 第一步:下载Java,下载地址:http://www.java.com/zh_CN/  注意要下载是完整的JDK(其中有jre) 第二步:安装Java.安装步骤不 ...

  2. Building clang on RedHat

    http://btorpey.github.io/blog/2015/01/02/building-clang/ clang is a great compiler, with a boatload ...

  3. System表空间大小有10Gb,使用率达到95%,

    System表空间大小有10Gb,使用率达到95%,很好奇, 随后执行如下SQL,查看system表空间中使用空间最多的对象 SQL>SELECT * FROM DBA_SEGMENTS T W ...

  4. OSX: 第三方部署Profile的方法和比較

    眼下至少有三个第三方部署Profile的方法. 一个Profile Handler, 是利用Launchd对制定文件夹改变而激活的机制,把须要的profiles文件斗存放在制定目标机器的文件夹内,系统 ...

  5. android 自己定义水平和圆形progressbar 仅仅定义一些style就能够

    效果图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/diss ...

  6. 3.2.1 配置构建Angular应用——简单的笔记存储应用——展示功能

    本节我们会通过构建一个简单的笔记存储应用(可以载入并修改一组简单的笔记)来学习如何应用Angular的特性.这个应用用到的特性有: 在JSON文件中存储笔记 展示.创建.修改和删除笔记 在笔记中使用M ...

  7. Python安装Mysql驱动出错解决(最新出炉)

    Python中最连接Mysql常用的驱动是 mysql-python :mysql的C语言的驱动 mysql-connector:msql官方的驱动 pymysql:python语言的驱动 我这里安装 ...

  8. unix2dos/dos2unix

    dos2unix命令用来将DOS格式的文本文件转换成UNIX格式的(DOS/MAC to UNIX text file format converter).DOS下的文本文件是以\r\n作为断行标志的 ...

  9. Lightoj 1018 - Brush (IV)

    1018 - Brush (IV)    PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 MB Muba ...

  10. html5--js函数在canvas中的应用

    html5--js函数在canvas中的应用 总结: 1.script中的函数写了要调用 2.rgb()这样的模式的色彩比较适合做变量 3.body的onload事件 4.带参函数 效果: 代码: & ...