我正在为Django应用程序中的模型编写测试,但无法让它们运行。我已经尽我所能去解决和搜索,但找不到解决办法。在
运行测试时收到的错误是AttributeError: 'UserModelTest' object has no attribute 'firstUser'
,这说明我没有正确定义firstUser。在
下面是相关的代码。在
测试.py
from django.test import TestCase
from .models import ContactForm
from datetime import datetime, timedelta
class UserModelTest(TestCase):
@classmethod
def setUpClass(cls):
cls.firstUser = ContactForm(
email="first@user.com",
name="first",
timestamp=datetime.today() + timedelta(days=2)
)
cls.firstUser.save()
def test_contactform_str_returns_email(self):
self.assertEqual("first@user.com", str(self.firstUser))
模型.py
^{pr2}$我使用的是Python版本3.5和Django版本1.10。在
setUpClass
对于Django已经被弃用了(我相信从1.8开始)。为了现在设置类,我需要使用setUpTestData
。剩下的代码仍然有效。setUpTestData
只在类中的所有测试方法之前运行一次(而不是在每个测试之前运行一次)。在即代码应为:
有关setUpTestData的更多信息可以在here找到。在
相关问题 更多 >
编程相关推荐