使用curl语法编写django测试请求
django-test-curl的Python项目详细描述
django测试旋度
使用django test curl,您可以获取测试用例并立即尝试它们 通过复制粘贴的魔法对抗一个真正的服务器!
django的testing tools附带了一个很棒的test client可以用来 根据视图模拟请求。如果你愿意的话,反对部署的django项目 要执行简单的请求,您可能需要使用curl。如果你想使用 两者的语法相同,这是您的软件包。
使用这个的好地方
这是为了开发TDD在Django中重新创建一个现有的API。如果你有 需要复制的curl请求库,非常适合 那。如果您需要一种可移植的格式来将测试用例转换为qa自动化,那么 这也很好。
不适合使用这个
如果.curl(...)
语法需要大量字符串格式,则应坚持
传统的test client。如果测试用例不是copy pastable,那么
不太合适。这也意味着如果使用随机性生成
请求,您将失去额外的测试覆盖范围。
安装
$ pip install django-test-curl
用法
fromdjango_test_curlimportCurlClientclassSimpleTest(TestCase):"""https://docs.djangoproject.com/en/stable/topics/testing/tools/#example"""defsetUp(self):self.client=CurlClient()deftest_details(self):response=self.client.curl(""" curl http://localhost:8000/customer/details/ """)self.assertEqual(response.status_code,200)self.assertEqual(len(response.context['customers']),5)
如果使用自定义^ {< CD2>},可以使用MIXIN版本:
fromdjango.testimportClientfromdjango_test_curlimportCurlClientMixinclassMyClient(CurlClientMixin,Client):...
我们支持curl功能的一个子集。有关完整列表和示例,请参见 那张tests。
- 标题
- 获取/发布/放置/删除/etc
- http基本身份验证