unittest的测试用例执行时都可以设置setup、teardown,用来初始化测试开始和测试结束关闭,例如:
import unittest
class MyTestCase(unittest.TestCase):
def setUp(self):
print("开始打开浏览器")
def test_one(self):
print("第一个测试用例的运行")
def test_two(self):
print("第二个测试用例的运行")
def tearDown(self):
print("开始关闭浏览器")
if __name__ == '__main__':
unittest.main()
运行结果:
可以看出每个测试用例执行,都会调用一次setup和teardown,如果涉及用例数量增加,那么这种方法就不适合了。可以使用以下方法:
import unittest
class MyTestCase(unittest.TestCase):
@classmethod
def setUpClass(cls):
print("开始打开浏览器")
def test_one(cls):
print("第一个测试用例的运行")
def test_two(cls):
print("第二个测试用例的运行")
@classmethod
def tearDownClass(cls):
print("开始关闭浏览器")
if __name__ == '__main__':
unittest.main()
运行结果:
可以看出用例的执行只执行一次setupclass 和一次teardown。