• 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的操作

  • 相关阅读:
    Monkey脚本编写
    monkey基础知识(二)
    monkey基础知识(一)
    全蛋蛋糕做法
    超乎想象的酥脆香甜---杏仁薄饼
    uiautomator——第一个例子:打开浏览器,输入网址
    uiautomator环境搭建
    如何通过外部表做数据一致性检查和配平
    如何在Elasticsearch中删除中文索引
    Elasticsearch SQL特性研究
  • 原文地址:https://www.cnblogs.com/XhyTechnologyShare/p/12252743.html
Copyright © 2020-2023  润新知