unittest框架之脚手架TestFixture
TestFixture
1.简介
我们可以把TestFixture看作夹心饼干外层的两片饼干,这两片饼干就是setUp/testDown,中间的夹心就是测试用例。除此之外,unittest还提供了测试类、测试模块的TestFixture
2.使用
2.1 用例级别-setUp/tearDown
1.setUp:测试用例开始执行前执行(以一条测试用例为单位)
2.tearDown:测试用例结束时执行(以一条测试用例为单位)
使用:
# 测试用例执行前开始执行(以一条测试用例为单位)
def setUp(self):
print("test case start")
# 测试用例执行后开始执行(以一条测试用例为单位)
def tearDown(self):
print("test case end")
2.2 类级别-setUpClass/tearDownClass
1.setUpClass:测试用例类开始执行前执行(以类为单位)
2.tearDownClass:测试用例类结束时执行(以类为单位)
使用:
# 测试用例类执行前开始执行(以类为单位)
@classmethod
def setUpClass(cls):
print("test class start")
# 测试用例类执行后开始执行(以类为单位)
@classmethod
def tearDownClass(cls):
print("test class end")
2.3 模块级别-setUpModule/tearDownModule
1.setUpModule:整个模块开始执行前执行(以类为单位)
2.tearDownModule:整个模块结束时执行(以类为单位)
使用:
# 模块执行前开始执行
def setUpModule(self):
print("test
module start")
# 模块执行后开始执行
def tearDownModule(self):
print("test
module end")
忽略测试用例
无条件忽略
@unittest.skip("忽略理由:这个测试用例此版本不执行")
有条件忽略
@unittest.skipIf(true,"忽略理由:如果?就不执行")
@unittest.skipUnless(false,"忽略理由:如果?就不执行")