我正在尝试开始使用 unittest,但我在让 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。
最佳答案
setUpClass 是单元测试框架 2.7 和 3.2 的新增功能。如果您想将它与旧版本一起使用,您需要使用 nose 作为测试运行器而不是 unittest。
关于python - 单元测试 setUpClass 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7020781/