【问题标题】:Django Rest Framework Test API Response AssertionDjango Rest Framework 测试 API 响应断言
【发布时间】:2014-07-14 08:02:29
【问题描述】:

我在寻找使用 Django Rest Framework 测试在 Django 中开发的 API 端点的理想方法时遇到了问题。我正在使用集成的 APITestCase 并执行如下请求:

response = self.client.get('/resources')

官方文档 (http://www.django-rest-framework.org/api-guide/testing) 指出最好使用 response.data 代替 response.content。我的模型包含一个 DateTimeField 字段,response.data 看起来像这样:

{'id': 1, 'issued': datetime.datetime(2014, 5, 3, 0, 0, tzinfo=<UTC>)}

浏览器中的真实响应如下所示:

{"id": 1, "issued": "2014-05-03T00:00:00Z"}

所以我不确定如何断言这两者相等!?

【问题讨论】:

    标签: django api testing django-rest-framework


    【解决方案1】:

    为了断言这两个是相等的,你可以使用

    `self.assertEqual( wanted_datetime,'got_datetime')`
    

    要比较 django 中的日期时间,您可以查看以下链接。

    1.Django unit testing with date/time-based objects

    2.How to compare dates in Django

    【讨论】:

      猜你喜欢
      • 2015-02-13
      • 1970-01-01
      • 2018-07-04
      • 2016-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-27
      • 1970-01-01
      相关资源
      最近更新 更多