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之dict()的操作方法
Sep 24 Python
使用Python编写简单的端口扫描器的实例分享
Dec 18 Python
Python通过命令开启http.server服务器的方法
Nov 04 Python
Pycharm配置远程调试的方法步骤
Dec 17 Python
python3实现网络爬虫之BeautifulSoup使用详解
Dec 19 Python
对django xadmin自定义菜单的实例详解
Jan 03 Python
python实现五子棋小游戏
Mar 25 Python
Python骚操作之动态定义函数
Mar 26 Python
python队列Queue的详解
May 10 Python
Python3 实现文件批量重命名示例代码
Jun 03 Python
Puppeteer使用示例详解
Jun 20 Python
Python autoescape标签用法解析
Jan 17 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
虹吸壶煮咖啡26个注意事项
2021/03/03 冲泡冲煮
CI(CodeIgniter)框架中的增删改查操作
2014/06/10 PHP
PHP命名空间和自动加载类
2016/04/03 PHP
PHP 获取指定地区的天气实例代码
2017/02/08 PHP
解决Laravel5.2 Auth认证退出失效的问题
2019/10/14 PHP
javascript游戏开发之《三国志曹操传》零部件开发(一)让静态人物动起来
2013/01/23 Javascript
select、radio表单回显功能实现避免使用jquery载入赋值
2013/06/08 Javascript
Node.js项目中调用JavaScript的EJS模板库的方法
2016/03/11 Javascript
javascript的理解及经典案例分析
2016/05/20 Javascript
学习vue.js表单控件绑定操作
2016/12/05 Javascript
jQuery点击导航栏选中更换样式的实现代码
2017/01/23 Javascript
JS库之wow.js使用方法
2017/09/14 Javascript
AngularJS标签页tab选项卡切换功能经典实例详解
2018/05/16 Javascript
web页面和微信小程序页面实现瀑布流效果
2018/09/26 Javascript
js计算两个时间差 天 时 分 秒 毫秒的代码
2019/05/21 Javascript
详解如何在JS代码中消灭for循环
2019/12/11 Javascript
[02:11]2014DOTA2 TI专访VG战队Fenrir:队伍气氛良好
2014/07/11 DOTA
flask中使用SQLAlchemy进行辅助开发的代码
2013/02/10 Python
Python实现Linux命令xxd -i功能
2016/03/06 Python
python画出三角形外接圆和内切圆的方法
2018/01/25 Python
Python实现基于SVM的分类器的方法
2019/07/19 Python
tensorflow实现tensor中满足某一条件的数值取出组成新的tensor
2020/01/04 Python
HTML5之SVG 2D入门13—svg对决canvas及长处和适用场景分析
2013/01/30 HTML / CSS
详解HTML5中ol标签的用法
2015/09/08 HTML / CSS
微软日本官方网站:Microsoft日本
2017/11/26 全球购物
Champs Sports加拿大:北美最大的以商场为基础的专业运动鞋和服装零售商之一
2018/05/01 全球购物
Fnac西班牙官网:法国文化和电子产品零售商
2021/03/14 全球购物
Internet主要有哪些网络群组成
2015/12/24 面试题
C#里面如何倒序排列一个数组的元素?
2013/06/21 面试题
横幅标语大全
2014/06/17 职场文书
计划生育诚信协议书
2014/11/02 职场文书
2014年办公室个人工作总结
2014/11/12 职场文书
个人年度总结报告
2015/03/09 职场文书
小学数学继续教育研修日志
2015/11/13 职场文书
Python使用openpyxl模块处理Excel文件
2022/06/05 Python
postgresql之greenplum字符串去重拼接方式
2023/05/08 PostgreSQL