class MotherTestCase(TestCase):
@classmethod
def setUpTestData(cls):
cls.my_value = "foo"
class ChildTestCase(MotherTestCase):
def test_basic(self):
self.assertEqual(self.my_value, "foo")
运行此测试时,我得到AttributeError: 'ChildTestCase' object has no attribute 'my_value'
你怎么解释这个?我知道我需要致电super()
,但Django doc并未这样说
我在Github上看到一个related issue但它已经1岁了,似乎已经修好了。
注意:我使用的是Python 3.5.2和Django 1.9.10
答案 0 :(得分:1)
这有点令人困惑,但是有2个不同的TestCase
类。有unittest.TestCase
和Django测试用例类django.test.TestCase
。为了使它起作用,您必须从django.test
导入,而不是unitttest。