Django REST framework 单元测试实例解析


Posted in Python onNovember 07, 2019

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

环境

Win10

Python3.7

Django2.2

项目

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

测试

参照官网 测试

和 Django 的测试差不多

创建 tutorial/tests/tests.py

import json
from django.test import TestCase
from rest_framework import status
from rest_framework.test import APIClient

class 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.022s

OK
Destroying test database for alias 'default'...

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

Python 相关文章推荐
python创建一个最简单http webserver服务器的方法
May 08 Python
Python字符串拼接、截取及替换方法总结分析
Apr 13 Python
python下读取公私钥做加解密实例详解
Mar 29 Python
11个Python3字典内置方法大全与示例汇总
May 13 Python
新手入门Python编程的8个实用建议
Jul 12 Python
基于MATLAB和Python实现MFCC特征参数提取
Aug 13 Python
Python处理session的方法整理
Aug 29 Python
python多线程扫描端口(线程池)
Sep 04 Python
Python将视频或者动态图gif逐帧保存为图片的方法
Sep 10 Python
python实现粒子群算法
Oct 15 Python
Python办公自动化之教你用Python批量识别发票并录入到Excel表格中
Jun 26 Python
python blinker 信号库
May 04 Python
浅谈python中统计计数的几种方法和Counter详解
Nov 07 #Python
Python操作SQLite/MySQL/LMDB数据库的方法
Nov 07 #Python
Flask框架路由和视图用法实例分析
Nov 07 #Python
Python 切分数组实例解析
Nov 07 #Python
Django 简单实现分页与搜索功能的示例代码
Nov 07 #Python
Flask框架请求钩子与request请求对象用法实例分析
Nov 07 #Python
Django框架ORM数据库操作实例详解
Nov 07 #Python
You might like
将php数组输出html表格的方法
2014/02/24 PHP
简单分析ucenter 会员同步登录通信原理
2014/08/25 PHP
php中 $$str 中 &quot;$$&quot; 的详解
2015/07/06 PHP
PHP可变函数学习小结
2015/11/29 PHP
深入讲解PHP的Yii框架中的属性(Property)
2016/03/18 PHP
Yii2.0预定义的别名功能小结
2016/07/04 PHP
JS 页面内容搜索,类似于 Ctrl+F功能的实现代码
2007/08/13 Javascript
javascript web对话框与弹出窗口
2009/02/22 Javascript
JavaScript高级程序设计 阅读笔记(十三) js定义类或对象
2012/08/14 Javascript
日历查询的算法 如何计算某一天是星期几
2012/12/12 Javascript
用jquery仿做发微博功能示例
2014/04/18 Javascript
jQuery中odd选择器的定义和用法
2014/12/23 Javascript
javascript实现左右控制无缝滚动
2014/12/31 Javascript
ajax图片上传,图片异步上传,更新实例
2016/12/30 Javascript
详解vue中的computed的this指向问题
2018/12/05 Javascript
vue中axios实现数据交互与跨域问题
2019/05/12 Javascript
python利用matplotlib库绘制饼图的方法示例
2016/12/18 Python
python实现八大排序算法(2)
2017/09/14 Python
Python里字典的基本用法(包括嵌套字典)
2019/02/27 Python
Python利用lxml模块爬取豆瓣读书排行榜的方法与分析
2019/04/15 Python
python实现文件的备份流程详解
2019/06/18 Python
Django 实现外键去除自动添加的后缀‘_id’
2019/11/15 Python
Pycharm最常用的快捷键及使用技巧
2020/03/05 Python
python中的对数log函数表示及用法
2020/12/09 Python
Hanky Panky官方网站:内衣和睡衣
2019/07/25 全球购物
英国豪华装饰照明品牌的在线零售商:Inspyer Lighting
2019/12/10 全球购物
介绍下java.util.Arrays类
2012/10/16 面试题
应届优秀本科大学毕业生自我鉴定
2014/01/21 职场文书
写给老师的表扬信
2014/01/21 职场文书
大学毕业生求职自荐书
2014/06/05 职场文书
环保口号大全
2014/06/12 职场文书
小学运动会开幕词
2015/01/28 职场文书
2015最新婚礼司仪主持词
2015/06/30 职场文书
500字作文之难忘的同学
2019/12/20 职场文书
SQLServer2019 数据库环境搭建与使用的实现
2021/04/08 SQL Server
go语言中切片与内存复制 memcpy 的实现操作
2021/04/27 Golang