pytest是基于py unittest的一个单元测试框架,用起来比unittest简单不少,不过和unittest使用不太一样,总结如下:

格式:

case的py文件名必须是test开头
def用例必须是test开头
class名必须是Test开头,注意大写
class中的def用例必须是test开头

pytest提供了很多运行参数,比较常用的有:

-k:只执行指定的用例
-s:命令行显示测试代码的输出,如果需要输出html结果最好不要-s
-v:显示详细信息
-q:不显示详细信息
--html=path:输出测试结果到html

初始化,pytest提供了如下初始化和清理环境方法:

setup_function、teardown_function
setup_module、teardown_module
setup、teardown
setup_class、teardown_class
setup_method、teardown_method
@pytest.fixture()

对于class用例集类来说:

setup_function、teardown_function 不能用
setup_module、teardown_module 放在类外可以使用、放在类内不能使用,只在最前和最后调用
setup、teardown 放在类内可以使用、放在类外不能使用,每个case都会调用
setup_class、teardown_class 放在类内可以使用、放在类外不能使用,每个case都会调用
setup_method、teardown_method 放在类内可以使用、放在类外不能使用,每个case都会调用
@pytest.fixture() 放在类内类外都可以使用

对于独立def用例来说:

setup_function、teardown_function 可以使用,每个case都会调用,无需成对使用
setup_module、teardown_module 可以使用,只在最前和最后调用
setup、teardown 可以使用,每个case都会调用
setup_class、teardown_class 不能用
setup_method、teardown_method 不能用
@pytest.fixture() 可以使用

pytest使用简介的更多相关文章

  1. pytest基础简介及实践举例

    一.pytest简介 pytest 是 python 的第三方单元测试框架,比自带的 unittest 更简洁和高效,同时兼容 unittest 框架.它还有如下优点: 1.简单灵活,容易上手,文档丰 ...

  2. Pytest 使用简介

    前言 最近在听极客时间的课程,里面的讲师极力推崇 pytest 框架,鄙视 unittest 框架,哈哈!然后查了些资料,发现了一条 python 鄙视链:pytest 鄙视 > unittes ...

  3. pytest 简介与安装

    前面我们已经基本上掌握了unittest测试框架,下面我们将学习新的pytest测试框架.之于原因嘛,太流行啦!掌握一个框架是不够的,急需另外一个,于是瞅上了pytest. pytest是什么? py ...

  4. pytest.1.快速开始

    From: http://www.testclass.net/pytest/quick_start/ 简介 pytest测试框架可以让我们很方便的编写测试用例,这些用例写起来虽然简单,但仍然可以规模化 ...

  5. Pytest自动化测试-简易入门教程(02)

    Pytest框架简介 Pytest是一个非常成熟的全功能的Python测试框架,主要有以下几个特点:1.简单灵活,容易上手,支持参数化2.能够支持简单的单元测试和复杂的功能测试,3.还可以用来做sel ...

  6. python+pytest接口自动化(11)-测试函数、测试类/测试方法的封装

    前言 在python+pytest 接口自动化系列中,我们之前的文章基本都没有将代码进行封装,但实际编写自动化测试脚本中,我们都需要将测试代码进行封装,才能被测试框架识别执行. 例如单个接口的请求代码 ...

  7. pytest测试框架 -- 简介

    一.pytest测试框架简介: (1)pytest是python的第三方测试框架,是基于unittest的扩展框架,比unittest更简洁,更高效. (2)pytest框架可以兼容unittest用 ...

  8. pytest简介

    pytest有哪些优点? 允许直接使用assert进行断言,而不需要使用self.assert*; 可以自动寻找单测文件.类和函数; Modular fixtures可以用于管理小型或参数化的测试信息 ...

  9. 【Pytest】python单元测试框架pytest简介

    1.Pytest介绍 pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高.根据pytest的官方网站介绍 ...

随机推荐

  1. springmvc+hibernate

    <本文摘要他人> 1.设计数据库:设计好表结构,最好符合3NF,采用Hibernate tools将设计好的表自动生成对应的实体entity. 1.创建Maven项目,按需映入Maven包 ...

  2. 通过mycat实现mysql的读写分离

    mysql的主从配置沿用上一篇博客的配置:https://www.cnblogs.com/MasterSword/p/9434169.html mycat下载地址:http://www.mycat.i ...

  3. 内置对象之request对象

    内置对象就是(容器)已经创建好的对象,可以被直接使用.当用户发送一个请求给容器,它就会自动创建一个对象来处理客户端发送来的消息,如request这个对象,可以获取到用户(客户端)发送来的信息.它的常见 ...

  4. Java 非静态内部类中可以定义静态变量或方法吗?

    如图: 这个问题的答案是不可以 由于内部类的实例化是由外部类实例化之后加载的,如果外部类还没有实例化,这时候调用内部类的静态成员,此时内部类还没有被加载,却要开始创建静态成员,这是矛盾的,所以java ...

  5. CMC+混频v103测试(scrt,vbs文件)

    Sub Main Dim cnte Dim cnt Dim delay Dim time Dim onetime onetime = 9999999 delay = 5000 time = 700 F ...

  6. [crypto] AEAD是啥

    AEAD这个缩写根据不同的语境有两个理解角度:认证加密机制,认证加密方式. 认证加密机制是指:一些用来完成认证加密工作的方法,拆分为认证和加密两部分来做,先加密后加密先认证后认证都无所谓,整个过程或者 ...

  7. composer相关使用

    #composer安装 curl -sS https://getcomposer.org/installer | php #如果该命令执行不了,通过其他方式下载install文件后再执行“php in ...

  8. 【actitivi】配置运行上遇到的问题

    基础: 需要 问题1:对于activiti-admin,添加mysql-connector-java-5.1.47.jar后: Sun Apr 28 16:09:00 CST 2019 WARN: E ...

  9. 【Idea】-NO.162.Idea.1 -【Idea Unable to import maven project: See logs for details】

    Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...

  10. 手动创建Oracle实例

    手工建库步骤 Step 1: Specify an Instance Identifier (SID)(指定一个实例的标识符SID)Step 2: Ensure That the Required E ...