pytest-----setup和teardown的作用域
setup和teardown的作用域
代码
#本段代码目的是说清楚setup和teardown的作用域
def test_case1():
print("这是一个函数测试用例1")
def test_case2():
print("这是一个函数测试用例2")
#setup_function和teardown_function
def setup_function(self):
print("这是一个setupfunction的作用域开始")
def teardown_function(self):
print("这是一个teardownfunction的作用域结束")
#setup_module和teardown_module
def setup_module(self):
print("这是一个setupmodule的作用域开始")
def teardown_module(self):
print("这是一个teardownmodule的作用域结束")
#class
class Testclass:
#setup和teardown
def setup(self):
print("这是一个setup的作用域开始")
def teardown(self):
print("这是一个teardown的作用域结束")
#setup_method和teardown_method
def setup_method(self):
print("这是一个setupmethod的作用域开始")
def teardown_method(self):
print("这是一个teardownmethod的作用域结束")
#setup_class和teardown_class
def setup_class(self):
print("这是一个setupclass的作用域开始")
def teardown_class(self):
print("这是一个teardownclass的作用域结束")
def test_case3(self):
print("这是一个方法测试用例3")
def test_case4(self):
print("这是一个方法测试用例4")
结果
这是一个setupmodule的作用域开始
这是一个setupfunction的作用域开始
这是一个函数测试用例1
.这是一个teardownfunction的作用域结束
这是一个setupfunction的作用域开始
这是一个函数测试用例2
.这是一个teardownfunction的作用域结束
这是一个setupclass的作用域开始
这是一个setupmethod的作用域开始
这是一个setup的作用域开始
这是一个方法测试用例3
.这是一个teardown的作用域结束
这是一个teardownmethod的作用域结束
这是一个setupmethod的作用域开始
这是一个setup的作用域开始
这是一个方法测试用例4
.这是一个teardown的作用域结束
这是一个teardownmethod的作用域结束
这是一个teardownclass的作用域结束
这是一个teardownmodule的作用域结束
优先级
模块级
setup_module teardown_module
函数级
setup_function teardown_function
类级
setup_class teardown_class
方法级
setup_method teardown_method
方法级
setup teardown
# setup_function和teardown_function
def setup_function(self):
print("这是一个setupfunction的作用域开始")
def teardown_function(self):
print("这是一个teardownfunction的作用域结束")
#setup_module和teardown_module
def setup_module(self):
print("这是一个setupmodule的作用域开始")
def teardown_module(self):
print("这是一个teardownmodule的作用域结束")
注意这个要写在class外才能执行