【发布时间】:2018-10-02 01:28:34
【问题描述】:
下面是model.py中的一个类
class UnitUsers(models.Model):
unit = models.ForeignKey(Unit, on_delete=models.CASCADE)
user = models.ForeignKey(settings.AUTH_USER_MODEL,
on_delete=models.CASCADE)
create = models.BooleanField(default=False)
mark = models.BooleanField(default=False)
submit = models.BooleanField(default=True)
def __str__(self):
return str(self.unit) + " - " + str(self.user)
class Meta:
verbose_name = _('Unit User')
verbose_name_plural = _('Unit Users')
尝试为verbose_name编写测试用例如下
class UnitUsersTest(TestCase):
@classmethod
def setUpTestData(cls):
unit = Unit.objects.create(name='Python',
start='2018-10-25 14:30:59',
end='2017-10-25 14:30:59',
description='111', deleted='False')
user = get_user_model().objects.create_superuser(username='admin',
email='admin@decent.mark',
password='password')
UnitUsers.objects.create(unit=unit, user=user, create='False',
mark='False', submit='True')
def test_verbose_name(self):
unit_user = UnitUsers.objects.get(id=1)
field_label = unit_user._meta.get_field('user').verbose_name
self.assertEquals(field_label, 'Unit User')
得到错误
失败:test_verbose_name (decentmark.tests.test_model.UnitUsersTest)
Traceback(最近一次调用最后一次): 文件“C:\Users\Prabhanjan\Documents\GitHub\decentmark\decentmark\tests\test_model.py”,第 54 行,在 test_verbose_name self.assertEquals(field_label, '单位用户') AssertionError:“用户”!=“单位用户” - 用户 + 单位用户
在 0.505 秒内运行 11 次测试
失败(失败=1)
【问题讨论】:
-
您好,欢迎来到 StackOverflow!为了获得更好的答案,并且您的答案以后不会被删除,您必须阅读并遵循一些基本规则和约定,以帮助每个人更好地沟通和提供帮助。请前往stackoverflow.com/help 阅读主题“我可以在这里问什么主题?”和“我应该避免问什么类型的问题?”。
-
不要为 django 内部编写测试,django 已经过很好的测试,你应该相信开发 django 源代码的开发人员。为自己的逻辑编写测试,而不是为 django 编写测试
标签: django unit-testing django-models