【问题标题】:Django Rest Framework - Test Client Post list of integersDjango Rest Framework - 测试客户端发布整数列表
【发布时间】:2018-09-20 13:26:31
【问题描述】:

我正在使用 django 做一个应用程序,我想对我的视图集进行单元测试。

我几乎可以测试所有内容,但是每次我通过 API 客户端向视图集发送整数或列表时,在视图集中,整数都会转换为字符串,因此,这对我来说是一个很大的失败:(

示例 - 测试文件:

body = {
    "age": 60
}
client = APIClient()
res = client.post(url, body, **headers, type='json')

在视图集中:request.data

{
    "age" "60"
}

【问题讨论】:

  • 如果你在使用 django,那你为什么不去 django 测试用例呢?
  • type='json'改成format='json'再试一次
  • 我改了,但还是一样。

标签: python django api unit-testing django-rest-framework


【解决方案1】:

这行得通:

client.post(url, json.dumps(body), **headers, format='json', content_type='application/json')

【讨论】:

  • 更新:您必须在 formatcontent_type 之间进行选择,否则您将遇到以下错误:AssertionError: You may not set both format and content_type.
猜你喜欢
  • 2016-06-10
  • 1970-01-01
  • 1970-01-01
  • 2017-02-27
  • 2014-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多