Pytest实现setup和teardown的详细使用详解


Posted in Python onApril 17, 2021

前言

用过unittest的童鞋都知道,有两个前置方法,两个后置方法;分别是

  • setup()
  • setupClass()
  • teardown()
  • teardownClass()

Pytest也贴心的提供了类似setup、teardown的方法,并且还超过四个,一共有十种

  • 模块级别:setup_module、teardown_module
  • 函数级别:setup_function、teardown_function,不在类中的方法
  • 类级别:setup_class、teardown_class
  • 方法级别:setup_method、teardown_method
  • 方法细化级别:setup、teardown

代码

用过unittest的童鞋,对这个前置、后置方法应该不陌生了,我们直接来看代码和运行结果

#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
__title__  =
__Time__   = 2020-04-06 11:40
__Author__ = 小菠萝测试笔记
__Blog__   = https://www.cnblogs.com/poloyy/
"""
import pytest


def setup_module():
    print("=====整个.py模块开始前只执行一次:打开浏览器=====")


def teardown_module():
    print("=====整个.py模块结束后只执行一次:关闭浏览器=====")


def setup_function():
    print("===每个函数级别用例开始前都执行setup_function===")


def teardown_function():
    print("===每个函数级别用例结束后都执行teardown_function====")


def test_one():
    print("one")


def test_two():
    print("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("three")
def test_four(self):
        print("four")


if __name__ == '__main__':
    pytest.main(["-q", "-s", "-ra", "setup_teardown.py"])

执行结果

Pytest实现setup和teardown的详细使用详解

到此这篇关于Pytest实现setup和teardown的详细使用详解的文章就介绍到这了,更多相关Pytest setup和teardown内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实现partial改变方法默认参数
Aug 18 Python
python实现TCP服务器端与客户端的方法详解
Apr 30 Python
使用Python下载歌词并嵌入歌曲文件中的实现代码
Nov 13 Python
Python文件与文件夹常见基本操作总结
Sep 19 Python
如何使用VSCode愉快的写Python于调试配置步骤
Apr 06 Python
通过Python编写一个简单登录功能过程解析
Sep 04 Python
flask利用flask-wtf验证上传的文件的方法
Jan 17 Python
Python安装whl文件过程图解
Feb 18 Python
在pytorch中实现只让指定变量向后传播梯度
Feb 29 Python
keras实现图像预处理并生成一个generator的案例
Jun 17 Python
如何使用Python调整图像大小
Sep 26 Python
利用Python实现最小二乘法与梯度下降算法
Feb 21 Python
pytest配置文件pytest.ini的详细使用
Apr 17 #Python
用Python简陋模拟n阶魔方
Python OpenCV快速入门教程
python小程序之飘落的银杏
Python Numpy之linspace用法说明
Apr 17 #Python
用Python的绘图库(matplotlib)绘制小波能量谱
用基于python的appium爬取b站直播消费记录
You might like
php中数组首字符过滤功能代码
2012/07/31 PHP
symfony2.4的twig中date用法分析
2016/03/18 PHP
FleaPHP框架数据库查询条件($conditions)写法总结
2016/03/19 PHP
jQuery登陆判断简单实现代码
2013/04/21 Javascript
$("").click与onclick的区别示例介绍
2014/09/25 Javascript
原生js实现类似弹窗抖动效果
2015/04/02 Javascript
Jquery1.9.1源码分析系列(六)延时对象应用之jQuery.ready
2015/11/24 Javascript
jquery div模态窗口的简单实例
2016/05/28 Javascript
详解Angularjs 如何自定义Img的ng-load 事件
2017/02/15 Javascript
canvas红包照片实例分享
2017/02/28 Javascript
nodejs个人博客开发第五步 分配数据
2017/04/12 NodeJs
React组件生命周期详解
2017/07/03 Javascript
详解webpack的配置文件entry与output
2017/08/21 Javascript
BootStrap Table实现server分页序号连续显示功能(当前页从上一页的结束序号开始)
2017/09/12 Javascript
JavaScript canvas基于数组生成柱状图代码实例
2020/03/06 Javascript
微信小程序学习总结(三)条件、模板、文件引用实例分析
2020/06/04 Javascript
swiper自定义分页器的样式
2020/09/14 Javascript
[57:59]EG vs Secret 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
python爬虫教程之爬取百度贴吧并下载的示例
2014/03/07 Python
解决python3 urllib中urlopen报错的问题
2017/03/25 Python
Python模拟用户登录验证
2017/09/11 Python
在Python中执行系统命令的方法示例详解
2017/09/14 Python
python使用Paramiko模块实现远程文件拷贝
2019/04/30 Python
Python timer定时器两种常用方法解析
2020/01/20 Python
Tensorflow 多线程设置方式
2020/02/06 Python
tensorflow使用L2 regularization正则化修正overfitting过拟合方式
2020/05/22 Python
Python 列表中的修改、添加和删除元素的实现
2020/06/11 Python
施华洛世奇澳大利亚官网:SWAROVSKI澳大利亚
2017/01/06 全球购物
Maison Lab荷兰:名牌Outlet购物
2018/08/10 全球购物
澳大利亚最便宜的网上药房:Chemist Warehouse
2020/01/30 全球购物
MYSQL相比于其他数据库有哪些特点
2013/07/19 面试题
药学专业毕业生求职信
2013/10/20 职场文书
业务主管岗位职责
2013/11/20 职场文书
退休教师欢送会主持词
2014/03/31 职场文书
go语言map与string的相互转换的实现
2021/04/07 Golang
python实现自动清理文件夹旧文件
2021/05/10 Python