当前位置 主页 > 服务器问题 > win服务器问题汇总 >

    Django REST framework 单元测试实例解析

    栏目:win服务器问题汇总 时间:2019-11-21 10:22

    这篇文章主要介绍了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'...

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