1. 程式人生 > 程式設計 >Django REST framework 單元測試例項解析

Django REST framework 單元測試例項解析

這篇文章主要介紹了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": "[email protected]"
    }
    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("[email protected]",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'...

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。