python - Django setUpTestData() 不适用于继承?

标签 python django unit-testing

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没这么说

我看到了related issue在 Github 上,但它已有 1 岁了,似乎已修复。

注意:我使用的是 Python 3.5.2 和 Django 1.9.10

最佳答案

这有点令人困惑,但是有 2 个不同的 TestCase 类。其中有 unittest.TestCase 和 Django 测试用例类 django.test.TestCase。为了使其工作,您必须从 django.test 导入,而不是 unitttest。

关于python - Django setUpTestData() 不适用于继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40399277/

相关文章:

python - 解析具有复杂分隔符的文本文件

Django haystack,快速搜索,提升

android - 单元测试 CoroutineExceptionHandler

java - 使用 jdbc JAVA 对 DAO 类进行 Spring 单元测试

.net - 如何从完整的 .Net 框架测试项目中引用 ASP.NET Core 项目?

python - 无法使用 Postgres、Docker Compose 和 Psycopg2 将主机名 "db"转换为地址

python - FileNotFoundError : [Errno 2] when using sphinx and autodoc

python - 实现快速排序有困难

jquery - 以正确的纵横比在 django View 中渲染图像

django - CSRF验证失败。请求被中止。当我发送 POST 请求时