4.pytest中固定装置setup和teardown

Posted 不休不止

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了4.pytest中固定装置setup和teardown相关的知识,希望对你有一定的参考价值。

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的主要内容,如果未能解决你的问题,请参考以下文章

如何在颤动中固定背景图像的大小和位置?

jQuery 动画位置在 Firefox 中固定不准确

如何在ipad和iphone中固定背景图像不滚动位置固定[重复]

Firefox 7.0.1 中固定位置元素的奇怪边框

dataTables中固定表头

如何使用 CSS 和 HTML 设置在任何设备中固定的文本字符的宽度