简单了解pytest测试框架setup和tearDown
作者:seyOrd 发布时间:2022-09-12 07:26:56
标签:py,test,setup,tearDown,测试框架
pytest的setup与teardown
1)pytest提供了两套互相独立的setup 与 teardown和一对相对自由的setup与teardown
2)模块级与函数级
模块级(setup_module/teardown_module)#开始于模块始末(不在类中)
函数级(setup_function/teardown_function)#只对函数用例生效(不在类中)
3)方法级与类级
方法级(setup_method/teardown_method)#开始于方法始末(在类中)
类级(setup_class/teardown_class)#只在类中前后运行一次(在类中)
3)类里面的(setup/teardown) #运行在调用方法的前后
setup与teardown例子
import pytest
# 模块中的方法
def setup_module():
print(
"setup_module:整个test_module.py模块只执行一次"
)
def teardown_module():
print(
"teardown_module:整个test_module.py模块只执行一次"
)
def setup_function():
print("setup_function:每个用例开始前都会执行")
def teardown_function():
print("teardown_function:每个用例结束后都会执行")
# 测试模块中的用例1
def test_one():
print("正在执行测试模块----test_one")
# 测试模块中的用例2
def test_two():
print("正在执行测试模块----test_two")
# 测试类
class TestCase():
def setup_class(self):
print("setup_class:所有用例执行之前")
def teardown_class(self):
print("teardown_class:所有用例执行之后") def setup_method(
self):
print("setup_method: 每个用例开始前执行")
def teardown_method(self):
print("teardown_method: 每个用例结束后执行")
def setup(self):
print("setup:每个用例开始前都会执行")
def teardown(self):
print("teardown:每个用例结束后都会执行")
def test_three(self):
print("正在执行测试类----test_three")
def test_four(self):
print("正在执行测试类----test_four")
if __name__ == "__main__":
pytest.main(["-s", "test_module.py"])
来源:https://www.cnblogs.com/seyOrd/p/12681746.html


猜你喜欢
- 声明本文章为个人拙见,仅仅提供参考,不一定正确,各位大佬可以发表自己的意见。题目描述考虑到在虚拟机部署中资源提供商通常希望自己的收益最大化,
- 用于操作数据库的SQL一般分为两种,一种是查询语句,也就是我们所说的 SELECT语句,另外一种就是更新语句,也叫做数据操作语句。言外之 意
- 这几天无聊的很看着china.nba.com焦点图效果捣鼓了一下有待完善!兼容性:IE6 , IE7 &nb
- 一、在 VS Code 中配置调试使用 Vue CLI 2搭建项目时:更新 config/index.js 内的 devtool prope
- SqlServer 在事务中获得自增ID实例代码在sqlserver 中插入数据时,如何返回自增的主键ID,方式有很多,这里提
- 点击按钮,出现半透明遮罩层弹框,说说自己之前发过的愁吧1、遮罩层半透明了 弹框也跟着半透明了 就像这样 绝望吧 是哪里错了呢?你的
- 0. 前言无论在工作中,还是学习中,都会出现这样子的需求,对某张表进行了排序(按时间排序也好,其他字段排序也罢),然后获取前x行的数据,由于
- folium是python的一个用来绘制地图,并在地图上打点,画圈,做颜色标记的工具类。简单易学,和pandas可以很好的融合,是居家必备良
- 死锁(Deadlock)所谓死锁:是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进
- 本文实例讲述了Django框架静态文件处理、中间件、上传文件操作。分享给大家供大家参考,具体如下:Django静态文件处理、中间件、上传文件
- 最终的效果废话不多少,直接上图这里可以清楚的看到,数据库里包含了日期,内容,和网站link下面我们来分析怎么实现使用的库import req
- 使用SQL对数据进行提取和分析时,我们经常会遇到数据重复的场景,需要我们对数据进行去重后分析。以某电商公司的销售报表为例,常见的去重方法我们
- Python由于语言的简洁性,让我们以人类思考的方式来写代码,新手更容易上手,老鸟更爱不释手。要写出 Pythonic(优雅的、地道的、整洁
- python-opencv3.0新增了一些比较有用的 * 算法,这里根据官网示例写了一个 * 类程序只能运行在安装有opencv3.0以上版
- 目录连接池是什么?为什么需要连接池?连接池的原理是什么?使用python语言自制简易mysql连接池开始使用自定义配置文件名 & 配
- 经过倒腾12306的登录,还是实现了,请求头很重要...各位感兴趣的可以继续写下去.....import sysimport timeimp
- 有时需要获取远程网站的某些信息,而服务器又限制了GET方式,只能通过POST数据提交,这个时候我们可以通过asp来实现模拟提交post数据,
- 在我们平时使用PyCharm的过程中,一般都是连接本地的Python环境进行开发,但是如果是离线的环境呢?这样就不好搭建Python开发环境
- 作者:Lachlan Hunt概要网络是不断的进化的. 新的和有创意的网站每天都在出现, 从各方面都在冲击着HTML的边界. HTML 4来
- 如下所示:string =" { "status": "error", "mes