我是新手,试图让我的单元测试通过,但 DateTimeField 有问题。
在我的设置中,我设置了 USE_TZ = True 和 TIME_ZONE 。
使用 MongoDb。
首先,测试给了我一个错误,抱怨比较原始偏移和偏移感知。将 auto_now_add=True 更改为 datetime.datetime.utcnow().replace(tzinfo=utc))
我仍然无法为我的 TIME_ZONE 找到正确的时间和日期。
在我将这些放入我的数据库(settings.py)之后
'OPTIONS' : {
'tz_aware' : True,
}
现在我可以更改我的 TIME_ZONE 并且时间和日期显示我的本地时间,而不是 UTC。
但是当我运行一个测试模型时:
nf.data_emissao = timezone.now()
...
#check if the nf is in database
lista_nfse = Nfse.objects.all()
self.assertEquals(lista_nfse.count(), 1)
nfse_no_banco = lista_nfse[0]
...
self.assertEquals( nfse_no_banco.data_emissao, nf.data_emissao)
我的测试失败:
AssertionError: datetime.datetime(2013, 8, 10, 2, 49, 59, 391000, tzinfo=
<bson.tz_util.FixedOffset object at 0x2bdd1d0>) != datetime.datetime(2013, 8, 10, 2, 49, 59,
391122, tzinfo=<UTC>)
我看到了 391000 和 391122 之间的差异,但不知道如何解决。