python3支持在通过requests库调试django后台接口写测试用例

python测试用例库使用

unittest库可以支持单元测试用例编写和验证。

基本使用方法

运行文件可以将文件中的用例全部执行一遍

import unittestclass TestBasicFunc(unittest.TestCase):def test_basic_asert(self):self.assertEqual(1, 1)if __name__=="__main__":unittest.main()

运行结果如下图:

基本断言用法

基本断言用法如下:

import unittest
class TestBasicFunc(unittest.TestCase):def test_basic_asert(self):self.assertEqual(1, 1)self.assertNotEqual(1, 2)self.assertAlmostEqual(3.01, 3.02, places=1)self.assertNotAlmostEqual(3.1, 2.9, places=2)self.assertTrue(3>2)self.assertFalse(3<2)self.assertIs("Hello", str("Hello"))self.assertIn("s", "is a good")

python支持requests库发送网络请求

发送get请求,解析对应返回json文本

import requestsdef try_request_get_test_case():url = "http://127.0.0.1:8000/index/"headers = {"Content-Type": "application/json"}response = requests.get(url, headers=headers)return_json = json.loads(response.text)print(return_json)return return_json

发送post请求

import requestsdef try_request_post_test_case():url = "http://127.0.0.1:8000/index/"payload = {"postWoman" : "localTest"}headers = {"Content-Type": "application/json"}response = requests.post(url, json=payload, headers=headers)return_json = json.loads(response.text)print(return_json)return return_json

django支持解析json格式body

解析json格式的body,需要用.body,而不是get函数

from django.shortcuts import render
from django.shortcuts import HttpResponse
import json
# Create your views here.
def index(request):postWoman=""if request.method == "POST":print("index!")body_json = json.loads(request.body)postWoman = body_json["postWoman"]print(postWoman)data = {'name':"hhhh",'age':'15','item':"test","postWoman":postWoman}return HttpResponse(json.dumps(data));

整个测试用例demo

#!/usr/bin/env python
# coding: utf-8import requests
import json
import unittestdef try_request_get_test_case():url = "http://127.0.0.1:8000/index/"headers = {"Content-Type": "application/json"}response = requests.get(url, headers=headers)return_json = json.loads(response.text)print(return_json)return return_jsondef try_request_post_test_case():url = "http://127.0.0.1:8000/index/"payload = {"postWoman" : "localTest"}headers = {"Content-Type": "application/json"}response = requests.post(url, json=payload, headers=headers)return_json = json.loads(response.text)print(return_json)return return_jsonclass TestBasicFunc(unittest.TestCase):def test_basic_asert(self):self.assertEqual(1, 1)self.assertNotEqual(1, 2)self.assertAlmostEqual(3.01, 3.02, places=1)self.assertNotAlmostEqual(3.1, 2.9, places=2)self.assertTrue(3>2)self.assertFalse(3<2)self.assertIs("Hello", str("Hello"))self.assertIn("s", "is a good")class TestRequestGet(unittest.TestCase):def test_get_func(self):return_json = try_request_get_test_case()self.assertEqual(return_json["postWoman"], "")def test_post_func(self):return_json = try_request_post_test_case()self.assertEqual(return_json["postWoman"], "localTest")if __name__=="__main__":unittest.main()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/448618.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ESU毅速丨为什么增材制造广受关注?

随着科技的飞速发展&#xff0c;增材制造3D打印技术逐渐成为制造业的新宠。包括航空航天、汽车、家电、电子等各行业都在积极拥抱3D打印&#xff0c;为什么3D打印能引起制造业广泛关注与应用&#xff1f;它的主要优势有哪些&#xff1f; 首先&#xff0c;3D打印减少浪费。3D打印…

2001-2022年各省农产品进出口数据

2001-2022年各省农产品进出口数据 1、时间&#xff1a;2001-2022年 2、来源&#xff1a;商务部、农业年鉴 3、指标&#xff1a;年份、省份、农产品出口额&#xff08;亿元&#xff09;、农产品进口额&#xff08;亿元&#xff09;、农产品出口额&#xff08;万美元&#xff…

linux基础学习(9):用户与组

1.三个用户文件 1.1用户信息文件&#xff1a;/etc/passwd 打开这个文件后&#xff0c;可以看到系统内所有的用户的信息&#xff0c;其中每一行是一个用户 列数含义1用户名2 密码位。 x代表该用户有密码 3 用户uid。 超级用户为0&#xff08;就是root用户&#xff09;&#x…

LeetCode:206反转链表

206. 反转链表 - 力扣&#xff08;LeetCode&#xff09; 不难&#xff0c;小细节是单写一个循环&#xff0c;把特殊情况包含进去&#xff0c; 单链表核心&#xff1a;上一个结点&#xff0c;当前结点&#xff0c;下一个结点&#xff0c; 代码&#xff1a;注释&#xff08;算是…

AI数字人训练数据集汇总

唇读&#xff08;Lip Reading&#xff09;&#xff0c;也称视觉语音识别&#xff08;Visual Speech Recognition&#xff09;&#xff0c;通过说话者口 型变化信息推断其所说的内容&#xff0c;旨在利用视觉信道信息补充听觉信道信息&#xff0c;在现实生活中有重要应用。例如&…

Python学习03 -- 函数相关内容

1.def --- 这个是定义函数的关键字 \n --- 这个在print()函数中是换行符号 1.注意是x, 加个空格之后再y 1.形式参数数量是不受限制的&#xff08;参数间用&#xff0c;隔开&#xff09;&#xff0c;传实参给形参的时候要一一对应 返回值 --- 函数返还的结果捏 1.写None的时…

统计学-R语言-8.2

文章目录 前言双因子方差分析数学模型主效应分析交互效应分析正态性检验 绘制3个品种产量数据合并后的正态Q-Q图&#xff08;数据&#xff1a;example8_2&#xff09;练习 前言 本篇将继续介绍方差分析的知识。 双因子方差分析 考虑两个类别自变量对数值因变量影响的方差分析…

【Python】一个简单的小案例:实现批量修改图片格式

1.代码 import os from tkinter import Tk, Button from PIL import Imagedef check_and_create_folders():# 获取当前目录current_directory os.getcwd()# 定义文件夹名称folders_to_check ["JPG", "PNG"]for folder_name in folders_to_check:folder_…

AWTK 开源串口屏开发(9) - 用户和权限管理

用户管理和权限控制是一个常用的功能。在工业软件中&#xff0c;通常将用户分为几种不同的角色&#xff0c;每种角色有不同的权限&#xff0c;比如管理员、操作员和维护员等等。在 AWTK 串口屏中&#xff0c;内置基本的用户管理和权限控制功能&#xff0c;可以满足常见的需求。…

2024年美赛B题:寻找潜水器 Searching for Submersibles 思路模型代码解析

2024年美赛B题&#xff1a;寻找潜水器 Searching for Submersibles 思路模型代码解析 【点击最下方群名片&#xff0c;加入群聊&#xff0c;获取更多思路与代码哦~】 问题翻译 海上游轮迷你潜艇&#xff08;MCMS&#xff09;是一家位于希腊的公司&#xff0c;专门制造能够将人…

BEV感知(2)--转换模块

目录 一、2D到3D转换模块 1、LSS 2、Pseudo LiDAR 二、3D到2D转换模块 1、Explicit mapping 2、Implicit mapping 三、transformer相关 1、VIT 2、Swin Transformer 一、2D到3D转换模块 核心目的&#xff1a;由于将2D空间转换到BEV&#xff0c;所以我们要引入一个媒…

常用数据分析模型与方法

常用数据分析模型与方法 在进行数据分析过程中&#xff0c;通常需要使用各种模型来证明自己的分析观点&#xff0c;一是为了使自己的结论更具备说服力&#xff0c;二是让自己的论证过程更具备逻辑性和条理性。 FineBI 推出部分数据分析方法&#xff0c;帮助用户更好的使用 BI 进…