zoukankan      html  css  js  c++  java
  • Pytest学习笔记(八)经典的setup和teardown

    在pytest中也有类似于unittest中的setup和teardown功能的默认函数或方法:

    • 函数级(setup_function/teardown_function)
    • 方法级(setup_method/teardown_method)
    • 类级(setup_class/teardown_class)
    • 模块级(setup_module/teardown_module)

    一、函数级(setup_function/teardown_function)

    用于函数形式的测试用例,每个测试用例执行前调用一次setup_function,执行结束后调用一次teardown_function,如下:

    def setup_function():
        print("准备条件")
    
    
    def teardown_function():
        print("销毁条件")
    
    
    def test_001():
        print("执行第一个测试用例")
    
    
    def test_002():
        print("执行第二个测试用例")

    运行结果:

     二、方法级(setup_method/teardown_method)

    用于类中方法形式的测试用例,每个测试用例执行前调用一次setup_method,执行结束后调用一次teardown_method,如下:

    class TestOne:
        def setup_method(self):
            print("准备条件")
    
        def teardown_method(self):
            print("销毁条件")
    
        def test_001(self):
            print("执行第一个测试用例")
    
        def test_002(self):
            print("执行第二个测试用例")

    运行结果:

     三、类级(setup_class/teardown_class)

    用于类中,在一个类中只调用一次,用例开始前调用一次setup_class,用例结束后调用一次teardown_class,如下:

    class TestOne:
        def setup_class(self):
            print("准备条件")
    
        def teardown_class(self):
            print("销毁条件")
    
        def test_001(self):
            print("执行第一个测试用例")
    
        def test_002(self):
            print("执行第二个测试用例")

    运行结果:

    四、模块级(setup_module/teardown_module)

    用于当前模块,当前模块执行前调用一次setup_module,当前模块执行结束后调用一次teardown_module,如下:

    def setup_module():
        print("开始执行当前模块")
    
    
    def teardown_module():
        print("结束执行当前模块")
    
    
    class TestOne:
        def setup_class(self):
            print("准备条件")
    
        def teardown_class(self):
            print("销毁条件")
    
        def test_001(self):
            print("执行第一个测试用例")
    
        def test_002(self):
            print("执行第二个测试用例")

    运行结果:

  • 相关阅读:
    scanf和cin的返回值
    C++ STL中Map的按Key排序跟按Value排序
    name lookup of 'res' changed for new ISO 'res' scoping
    string中c_str()、data()、copy(p,n)函数的用法
    C中malloc的使用(转)
    codeforces 653B B. Bear and Compressing(dfs)
    codeforces 653A A. Bear and Three Balls(水题)
    hdu-5646 DZY Loves Partition(贪心)
    hdu-5645 DZY Loves Balls(水题)
    codeforces 655D D. Robot Rapping Results Report(拓扑排序+拓扑序记录)
  • 原文地址:https://www.cnblogs.com/eastonliu/p/14139828.html
Copyright © 2011-2022 走看看