pytest里面的setup和teardown有以下几种:
- 模块级(setup_module/ teardown_module)开始于模块始末,全局的
- 函数级(setup_function / teardown_function) 只对函数用例生效(不在类中)
- 类级(setup_class / teardown_class) 只在类中前后运行一次(在类中)
- 方法级(setup_method / teardown_method)开始于方法始末(在类中)
- 类里面的(setup / teardown)运行在调用方法的前后
1. 先看一下函数级别的 setup_function/ teardown_function, 这个只对函数生效,不能用在类中;类中的方法不能使用
def setup_function():
print('setup_function')
def teardown_function():
print('teardown_function')
def test01():
print('test01')
def test02():
print('test02')
运行结果中可以看出,setup_function/teardown_funtion各被运行了两次,每次调用函数前后都会执行一次