用例运行级别
-
模块级(setup_module/teardown_module)开始于模块始末,全局的
-
函数级(setup_function/teardown_function)只对函数用例生效(不在类中)
-
类级(setup_class/teardown_class)只在类中前后运行一次(在类中)
-
方法级(setup_method/teardown_method)开始于方法始末(在类中)
类里面的(setup/teardown)运行在调用方法的前后
#!usr/bin/python
# -*- coding: utf-8 -*-
import pytest
def setup_module():
print "setup_module:模块开始前执行"
def teardown_module():
print "teardown_module:模块结束后执行"
def setup_function():
print "setup_function:每个函数开始前都执行"
def teardown_function():
print "teardown_function:每个函数结束时执行"
def test_one():
print 1111111
def test_two():
print 2222222
def test_three():
print 33333
# -s参数是为了显示用例的打印信息。 -q参数只显示结果,不显示过程
pytest.main(["-s", "test_function.py"])
运行结果:
==================== 3 passed, 2 warnings in 0.02 seconds =====================
collected 3 items
test_function.py
setup_module:模块开始前执行
setup_function:每个函数开始前都执行
1111111
.teardown_function:每个函数结束时执行
setup_function:每个函数开始前都执行
2222222
.teardown_function:每个函数结束时执行
setup_function:每个函数开始前都执行
33333
.teardown_function:每个函数结束时执行
teardown_module:模块结束后执行
#!usr/bin/python
# -*- coding: utf-8 -*-
import pytest
def setup_module():
print "setup_module:模块开始前执行"
def teardown_module():
print "teardown_module:模块结束后执行"
def setup_function():
print "setup_function:每个函数开始前都执行"
def teardown_function():
print "teardown_function:每个函数结束时执行"
def test_one():
print 1111111
def test_two():
print 2222222
def test_three():
print 33333
class TestClass:
def setup_class(self):
print "setup_class:类中开始时执行一次"
def teardown_class(self):
print "teardown_class:类中结束时执行一次"
def setup(self):
print "setup:类中每个方法执行前运行"
def teardown(self):
print "teardown:类中每个方法执行后执行"
def setup_method(self):
print "setup_method:类中每个方法执行前运行"
def teardown_method(self):
print "teardown_method:类中每个方法执行后执行"
def test_1(self):
print "test_11111111111111"
def test_2(self):
print "test_222222222222"
# setup_class》setup_method》setup 》用例》teardown》teardown_method》teardown_class
# -s参数是为了显示用例的打印信息。 -q参数只显示结果,不显示过程
if __name__ == '__main__':
# pytest.main(["-s", "test_function.py"])
pytest.main(["-s", "test_function.py"])