上下文:python 2.6.5环境
我正在使用unittest.defaultTestLoader.loadTestsFromModule(module)
来加载测试。
但是,加载以下内容时,不会执行setUpClass
方法。
class MyTest(unittest.TestCase):
foo = None
def test_choice(self):
self.logger.info(' .. %s' % str(Full.foo))
self.assertTrue(1 == 1)
@classmethod
def setUpClass(cls):
logging.warn('setUpClass')
cls.foo = settings.INITIAL
返回的测试套件显示它返回:
<unittest.TestSuite
tests=[<unittest.TestSuite
tests=[<internal.tests.master.MyTest testMethod=test_choice>]>,
基本上在'test'包下,会有很多测试模块。我想要setUpClass
&amp; tearDownClass
适用于每个测试套件。 loadTestsFromModule
不符合我的要求。还有其他方法可以实现这一目标吗?
答案 0 :(得分:2)
升级到使用unittest2后,它现在可以正常工作。
答案 1 :(得分:1)
TestLoader.loadTestsFromModule方法仅用于加载您的模块中的测试用例到测试套件中,如果您需要setUpClass & tearDownClass
,您应该run您的测试套件被执行。