unittest的测试用例执行时都可以设置setup、teardown,用来初始化测试开始和测试结束关闭,例如:
import unittestclass 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 unittestclass 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。