我正在为Django-rest-framework API端点编写unittest。在version 3.5中,他们添加了RequestsClient()。文档说 -
此接口不会向网络发送任何HTTP请求,而是将所有传出请求强制转换为WSGI,并直接调用您的应用程序。
根据我的理解,我认为RequestsClient()对来自不同服务器的网络请求很有用。不确定它在同一台服务器上是否有任何优势?使用RequestsClient()优于APIClient()吗?
答案 0 :(得分:4)
使用RequestsClient()优于APIClient()
是否有任何优势
这是一个更高的测试杠杆。 RequestsClient
将从APIClient绕过的WSGI层测试您的堆栈。
这也意味着使用身份验证或CSRF的测试看起来更像真实请求。
答案 1 :(得分:3)
如果您不确定,请使用标准APIClient
。
RequestsClient
非常有用: