我想单元测试开始,但我有一个问题变得setUpClass()
工作。这里是我的测试代码...单元测试setUpClass不工作
import unittest
class TestRepGen(unittest.TestCase):
""" Contains methods for training data testing """
testvar = None
@classmethod
def setUpClass(cls):
cls.testvar = 6
def test_method(self):
""" Ensure data is selected """
self.assertIsNotNone(self.testvar,"self.testvar is None!")
# run tests
if __name__ == '__main__':
unittest.main()
显示断言错误信息,表明self.testvar == None
,并没有被setUpClass()
改变。我的代码有问题吗?
如果我从IDE(Wing)或直接从命令行运行代码,我会得到相同的结果。为了记录,我在Windows7下使用Python 3.2.1。
我已经在Windows 7下的Python 2.7上测试过你的代码,它工作的很好,测试通过了,如果你运行_exactly_上面的脚本,它真的不适合你吗? Python 3.3的文档并没有指出'setUpClass'的行为有任何变化。 – agf
您粘贴的代码适用于python27和python 3.2.1的windows 7。 – stderr
您是否有使用setUpClass的理由?只需使用'def setUp(self)'? – Bogdan