【发布时间】:2018-04-10 12:50:22
【问题描述】:
我有一个类 BaseTest,所有测试都是从它扩展而来的。 测试位于不同的模块和包中。 setUpClass 和 tearDownClass 方法在每个 unittest.TestCase 类之前执行。 我怎样才能只执行一次 setUp 和 tearDown 。所有测试之前和之后。
这是代码示例:
import unittest
class BaseTest(unittest.TestCase):
@classmethod
def setUpClass(cls):
print("setUpClass")
@classmethod
def tearDownClass(cls):
print("tearDownClass")
if __name__ == '__main__':
unittest.main()
module2.py:
class TestOne(BaseTest):
def test_one(self):
print("Test One")
class TestTwo(BaseTest):
def test_two(self):
print("Test Two")
if __name__ == '__main__':
unittest.main()
module3.py
class TestThree(BaseTest):
def test_three(self):
print("Test Three")
class TestFour(BaseTest):
def test_four(self):
print("Test Four")
if __name__ == '__main__':
unittest.main()
module4.py
class TestFive(BaseTest):
def test_five(self):
print("Test Five")
if __name__ == '__main__':
unittest.main()
【问题讨论】: