Django REST framework 单元测试实例解析

时间:2021-05-22

这篇文章主要介绍了Django REST framework 单元测试实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

环境

Win10

Python3.7

Django2.2

项目

参照官网 快速开始 写了一个 demo

测试

参照官网 测试

和 Django 的测试差不多

创建 tutorial/tests/tests.py

import jsonfrom django.test import TestCasefrom rest_framework import statusfrom rest_framework.test import APIClientclass LittleTestCase(TestCase): def setUp(self): self.click = APIClient() def test_users_post(self): # /users/ POST data = { "username": "tom", "email": "tom@example.com" } response = self.client.post("/users/", data) self.assertEqual(response.status_code, status.HTTP_201_CREATED) # /users/:id GET 地址 response_content = json.loads(response.content) user_url = response_content["url"] # /users/:id GET 检查新增用户是否符合预期 response = self.client.get(user_url) response_content = json.loads(response.content) self.assertEqual(response.status_code, 200) self.assertEqual("tom", response_content["username"]) self.assertEqual("tom@example.com", response_content["email"])

执行测试

python manage.py test <测试文件所在目录>

python manage.py test tests/

测试结果

执行一个测试成功

测试前创建测试数据库,测试完毕删除数据库

Creating test database for alias 'default'...System check identified no issues (0 silenced)..----------------------------------------------------------------------Ran 1 test in 0.022sOKDestroying test database for alias 'default'...

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章