码迷,mamicode.com
首页 > 其他好文 > 详细

4.pytest中固定装置setup和teardown

时间:2020-02-02 18:10:59      阅读:77      评论:0      收藏:0      [点我收藏+]

标签:source   方法   sse   add   img   pre   计算   return   异常   

pytest提供了不同级别的setup和teardown,来完成测试中前置和后置的操作。

1.函数级别:setup_function/teardown_function

def test_source():
    print(##### 打印功能 #####)

def setup_function():
    print(----- 开始打印 -----)

def teardown_function():
    print(----- 结束打印 -----)

技术图片

 2.类级别:setup_class/teardown_class

def add(a,b):
    return a+b
#注意setup_class 和teardown_class 必须写在类中
class Test_add():
   
    def setup_class(self):
        print(----- 计算开始 -----)

    def teardown_class(self):
        print(----- 计算结束 -----)

    def test_1(self):
        print(----- 正在第一次计算 -----)
        assert add(1,2)==3

    def test_2(self):
        print(----- 正在第二次计算 -----)
        assert add(2,3)==5

技术图片

 3.方法级别:setup_method/teardown_method

def add(a,b):
    return a+b

class Test_add():
  
    def setup_class(self):
        print(我是类级别的setup)

    def teardown_class(self):
        print(我是类级别的teardown)
   # 注意:setup_method和teardown_method 必须放在类中
    def setup_method(self):
        print(我是方法级别的setup)

    def teardown_method(self):
        print(我是方法级别的teardown)

    def test_1(self):
        print(----- 正在第一次计算 -----)
        assert add(1,2)==3

    def test_2(self):
        print(----- 正在第二次计算 -----)
        assert add(2,3)==5

技术图片

4.模块级别:setup_module/teardown_module

def test_source():
    print(##### 打印功能 #####)

def setup_function():
    print(----- 开始打印 -----)

def teardown_function():
    print(----- 结束打印 -----)

def setup_module():
    print(我是模块级别的setup)

def teardown_module():
    print(我是模块级别的module)

def add(a,b):
    return a+b

class Test_add():

    def setup_class(self):
        print(我是类级别的setup)

    def teardown_class(self):
        print(我是类级别的teardown)

    def setup_method(self):
        print(我是方法级别的setup)

    def teardown_method(self):
        print(我是方法级别的teardown)

    def test_1(self):
        print(----- 正在第一次计算 -----)
        assert add(1,2)==3

    def test_2(self):
        print(----- 正在第二次计算 -----)
        assert add(2,3)==5

技术图片

 5.单独的setup和teardown

  使用单独的setup和teardown其作用和setup_function/teardown_function/setup_method/teardown_method 一样

总结上述各级别的setup和teardown如果其中setup出现异常则不会执行teardown的操作

4.pytest中固定装置setup和teardown

标签:source   方法   sse   add   img   pre   计算   return   异常   

原文地址:https://www.cnblogs.com/XhyTechnologyShare/p/12252743.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!