首页 > 其他 > 详细

pytest ---setup和teardown的详细使用

时间:2021-04-12 18:14:23      阅读:20      评论:0      收藏:0      [点我收藏+]

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

  • 模块级别:setup_module、teardown_module ---开始于横块始末,全局的 
  • 函数级别:setup_function、teardown_function---只对函数用例生效(不在类中)
  • 类级别:setup_class、teardown_class(与unitest一样)---只在类中前后运行一次(在类中)
  • 方法级别:setup_method、teardown_method  ---开始于方法始末(在类中)
  • 方法细化级别:setup、teardown(与unitest一样)---运行在调用方法前后

示例:

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 Testcaselist():
    # 类里面的
    def setup(self):
        print(‘setup: 每个用例前开始执行‘)
    def teardown(self):
        print(‘teardown: 每个用例后开始执行‘)

    def setup_method(self):
        print(‘setup: 每个类方法用例前开始执行‘)
    def teardown_method(self):
        print(‘teardown: 每个类方法用例后开始执行‘)
        # 测试用例
    def test_001(self):
        print("正在执行test_001用例")
        p = "Python"
        assert "h" in p
    def test_002(self):
        print("正在执行test_002用例")
        p = ‘test‘
        assert ‘t‘ in p
    if __name__ == ‘__main__‘:
        pytest.main([‘-s‘, ‘test_hello.py‘])
 
输出:

=====整个.py模块开始前只执行一次: 脚本开始执行脚本=====
===每个函数级别用例开始前都执行,不在类中, setup_function===
one
.===每个函数级别用例结束后都执行,不在类中, teardown_function====
===每个函数级别用例开始前都执行,不在类中, setup_function===
two
.===每个函数级别用例结束后都执行,不在类中, teardown_function====
setup: 每个类方法用例前开始执行
setup: 每个用例前开始执行
正在执行test_001用例
.teardown: 每个用例后开始执行
teardown: 每个类方法用例后开始执行
setup: 每个类方法用例前开始执行
setup: 每个用例前开始执行
正在执行test_002用例
.teardown: 每个用例后开始执行
teardown: 每个类方法用例后开始执行
=====整个.py模块结束后只执行一次: 脚本执行结束===

 

pytest ---setup和teardown的详细使用

原文:https://www.cnblogs.com/saryli/p/14648879.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!