当前位置: 首页 > news >正文

1.接口测试-postman学习

目录

    • 1.接口相关概念
    • 2.接口测试流程
    • 3.postman基本使用-创建请求
      • (1)环境
      • (2)新建项目集合Collections
      • (3)新建collection
      • (4)新建模块
      • (5)构建请求
      • 请求URL
      • header设置
      • body设置
        • (1)编码方式不同
        • (2)支持的内容类型不同
      • 4.postman使用-创建server服务端

1.接口相关概念

接口不关注实现细节,只关注输入和输出(数据传输)
接口的本质就说请求,但并不是所有请求
接口一定是实现项目业务功能
接口不需要UI,通过协议即可传输数据(语音电话,视频电话)

2.接口测试流程

(1)研发提供接口文档,测试编写接口测试用例【等价类、边界值设计】
(2)评审接口测试用例
(3)使用工具或代码测试、调试接口
(4)跟踪接口bug,回归测试

3.postman基本使用-创建请求

(1)环境

配置并选择测试环境or生产环境or集成开发环境
在这里插入图片描述

(2)新建项目集合Collections

(3)新建collection

(4)新建模块

在这里插入图片描述

(5)构建请求

  • 请求方式
  • 请求URL
  • 请求头headr
    并不是每个请求的header都是一样的,比如 Content-Type,要根据服务器接受类型进行设置
  • 请求体body

请求URL

(1)可以使用【环境】中的host
在这里插入图片描述
(2)若需要对字符进行编码
在这里插入图片描述
在这里插入图片描述

header设置

在这里插入图片描述

body设置

在这里插入图片描述
form-data 和 x-www-form-urlencoded 区别:都是body中表单请求的一种格式,主要区别有两点。
参考文章:form-data和x-www-form-urlencoded的区别和延伸

(1)编码方式不同

x-www-form-urlencoded或者application/x-www-form-urlencoded
会将参数进行编码,并不是json格式
输入:

name: 张三
age: 18

实际上,请求体会被编码成如下格式:

name=%E5%BC%A0%E4%B8%89&age=18

form-data或者multipart/form-data
会把表单内容分成多个部分
类似这样:

--AaB03x
Content-Disposition: form-data; name="name"
Content-Type: text/plain
张三
--AaB03x
Content-Disposition: form-data; name="age"
Content-Type: text/plain
18
--AaB03x--

【说明】

  • –AaB03x,boundary,也就是边界,是分割表单不同part的分界线。
    AaB03x是一个随机字符串,需要保证整个请求体都是用相同的boundary
  • name="name"和name=“age”,这个很容易理解,就是每个part的名字,也就是字段名。
  • Content-Type,每个part的内容类型,我们这里因为传的是普通文本,所以内容类型使用text/plain。
  • –boundary表示一个part的开始, –boundary– 表示所有part都结束了。
  • 请求头需设置
Content-Type: multipart/form-data; boundary=AaB03x
(2)支持的内容类型不同

x-www-form-urlencoded只支持普通的文本内容,优点是占用字节少。
multipart/form-data的每一个part部分,都支持不同的Content-Type,比如图片、音频、视频等。优点是支持文件上传,缺点是占用字节多。

4.postman使用-创建server服务端

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
复制之后手动加上设置的Request URL(如test_hello)
https://9e64fa41-17af-461d-994c-57e2e4c899a0.mock.pstmn.io/test_hello

相关文章:

1.接口测试-postman学习

目录 1.接口相关概念2.接口测试流程3.postman基本使用-创建请求(1)环境(2)新建项目集合Collections(3)新建collection(4)新建模块(5)构建请求请求URLheader设…...

2024年码蹄杯本科院校赛道初赛(省赛)

赛时所写题&#xff0c;简单写一下思路&#xff0c;qwq 第一题&#xff1a; 输出严格次小值&#xff0c; //#pragma GCC optimize(2)#include <iostream> #include <cstring> #include <algorithm> #include <vector> #include <queue> #incl…...

PHP蜜语翻译器在线文字转码解码源码

源码介绍 PHP蜜语翻译器在线文字转码解码源码 文字加密通话、一键转换、蜜语密码 无需数据库,可以将文字、字母、数字、代码、表情、标点符号等内容转换成新的文字形式&#xff0c;通过简单的文字以不同的排列顺序来表达不同的内容&#xff01;支持在线加密解密 有多种加密展示…...

安卓浏览器区分启动、打开、分享

搞了几个钟头&#xff0c;终于全兼容了&#xff0c;分享有2种类型&#xff01; void getDataFromIntent(Intent intent) {if (intent.getAction().equals(Intent.ACTION_VIEW)) {urln intent.getDataString();if (urln ! null) {if (urln.contains("\n"))urln url…...

C/C++ 数组负数下标

一 概述 在 C 中&#xff0c;数组是一块连续的内存空间&#xff0c;数组的下标通常用来定位这段内存中的特定元素。下标通常从 0 开始&#xff0c;最大到数组长度减 1。例如&#xff0c;一个有 10 个元素的数组&#xff0c;其有效下标范围是从 0 到 9。 当你尝试使用负数下标来…...

钓鱼网站开发原理(社会工程学)

钓鱼网站开发原理&#xff08;社会工程学&#xff09; 一、课程简介1、课程大纲2、课程目标3、知识储备 二、钓鱼网站简介1、什么是钓鱼网站2、开发&原理 三、PHP环境搭建1、简介2、自动安装MySQL/apache/PHP3、安装navicat 四、PDO表单入库案例1、语法2、显示登录表单3、入…...

如何优雅地使用 console.log 打印数组或对象

一、背景 使用 console.log 在控制台中打印数组或者对象时&#xff0c;很多时候它们的字段都是默认关闭的&#xff0c;需要手动一个个的点开&#xff0c;非常不直观且麻烦。 二、解决方案 使用 JSON.stringify() 的第三个参数 我们来看一下官方对于 JSON.stringify 的介绍 三、…...

模式分解的概念(下)-无损连接分解的与保持函数依赖分解的定义和判断、损失分解

一、无损连接分解 1、定义 2、检验一个分解是否是无损连接分解的算法 输入与输出 输入&#xff1a; 关系模式R&#xff08;U&#xff0c;F&#xff09;&#xff0c;F是最小函数依赖集 R上的一个分解 输出&#xff1a; 判断分解是否为无损连接分解 &#xff08;1&#x…...

vue3父组件获取子组件的实例对象

一&#xff0c;ref 在父组件的模板里&#xff0c;对子组件的标签定义ref属性&#xff0c;并且设置属性值&#xff0c;在方法里获取ref()获取实例对象。 父组件&#xff1a; <template><div ><div>我是父组件</div><<SonCom ref"sonComRe…...

主流框架选择:React、Angular、Vue的详细比较

目前前端小伙伴经常使用三种广泛使用的开发框架&#xff1a;React、Angular、Vue - 来设计网站 Reactjs&#xff1a;效率和多功能性而闻名 Angularjs&#xff1a;创建复杂的应用程序提供了完整的解决方案&#xff0c;紧凑且易于使用的框架 Vuejs&#xff1a;注重灵活性和可重用…...

交易者的意义是什么?

按照阿德勒的说法&#xff1a;人生的意义就是为社会创造价值&#xff0c;推动整个人类社会的发展进步。 我认同且秉持这种观点。 而在交易中&#xff0c;你是否直接或者间接为社会做贡献了呢&#xff1f;这个还真不好说。 但是做为职业交易者&#xff0c;你的存在价值&#…...

io_uring

转&#xff1a;[译] Linux 异步 I_O 框架 io_uring&#xff1a;基本原理、程序示例与性能压测&#xff08;2020&#xff09; 新一代异步IO框架 io_uring &#xff5c; 得物技术 干翻 nio &#xff0c;王炸 io_uring 来了 &#xff01;&#xff01;&#xff08;图解史上最全&a…...

构建高并发Web应用:基于Gunicorn、Flask和Docker的部署指南

目录 一 理解基础组件 什么是Flask? 什么是Gunicorn? 什么是Docker? 二 环境准备 三 构建Flask应用 创建项目结构 编写Flask应用 app/views.py 四 使用Gunicorn部署Flask应用 配置Gunicorn Gunicorn配置文件 五 使用Docker进行容器化部署 编写Dockerfile 构建…...

【Ruby简单脚本02】双色球系统

# frozen_string_literal: true require date # 生成中奖号码的工具 # 红球 1-32 篮球 1-15 def create_num nums [] 6.times do while true num rand(1..32) unless nums.include?(num) nums << num break end end end blue rand(1..15) nums…...

Netty ByteBuf 使用详解

文章目录 1.概述2. ByteBuf 分类3. 代码实例3.1 常用方法3.1.1 创建ByteBuf3.1.2 写入字节3.1.3 扩容3.1.2.1 扩容实例3.1.2.2 扩容计算新容量代码 3.1.4 读取字节3.1.5 标记回退3.1.6 slice3.1.7 duplicate3.1.8 CompositeByteBuf3.1.9 retain & release3.1.9.1 retain &a…...

怎样去掉卷子上的答案并打印

当面对试卷答案的问题时&#xff0c;一个高效而简单的方法是利用图片编辑软件中的“消除笔”功能。这种方法要求我们首先将试卷拍摄成照片&#xff0c;然后利用该功能轻松擦除答案。尽管这一方法可能需要些许时间和耐心&#xff0c;但它确实为我们提供了一个可行的解决途径。 然…...

海思SS928/SD3403开发笔记1——使用串口调试开发板

该板子使用串口可以调试&#xff0c;下面是win11 调试 该板子步骤 1、给板子接入鼠标、键盘、usb转串口 2、下载SecureCRT&#xff0c;并科学使用 下载地址&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/11dIkZVstvHQUhE8uS1YO0Q 提取码&#xff1a;vinv 3、安装c…...

JSON数据操作艺术

在现代Web开发和数据交换场景中&#xff0c;JSON&#xff08;JavaScript Object Notation&#xff09;作为一种轻量级的数据交换格式&#xff0c;扮演着至关重要的角色。它以易于阅读的文本形式存储和传输数据对象&#xff0c;而这些对象的核心便是由属性名&#xff08;键&…...

如何验证Rust中的字符串变量在超出作用域时自动释放内存?

讲动人的故事,写懂人的代码 在公司内部的Rust培训课上,讲师贾克强比较了 Rust、Java 和 C++ 三种编程语言在变量越过作用域时自动释放堆内存的不同特性。 Rust 通过所有权系统和借用检查,实现了内存安全和自动管理,从而避免了大部分内存泄漏。Rust 自动管理标准库中数据类…...

55.Python pip install 安装失败的一个情况Requirement already satisfied

1.问题 以前使用Pycharm 社区版开发的一个项目&#xff0c;今天使用PyCharm 专业版打开&#xff0c;原项目的虚拟环境从venv更换为.venv&#xff0c;然后重新安装插件。安装时&#xff0c;提示Requirement already satisfied: qt_material in c:\tools\python37\lib\site-packa…...

Axios进阶

目录 axios实例 axios请求配置 拦截器 请求拦截器 响应拦截器 取消请求 axios不仅仅是简单的用基础请求用法的形式向服务器请求数据&#xff0c;一旦请求的端口与次数变多之后&#xff0c;简单的请求用法会有些许麻烦。所以&#xff0c;axios允许我们进行创建axios实例、ax…...

C++ 丑数

描述 把只包含质因子2、3和5的数称作丑数&#xff08;Ugly Number&#xff09;。例如6、8都是丑数&#xff0c;但14不是&#xff0c;因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第 n个丑数。 数据范围&#xff1a;0≤&#x1d45b;≤20000≤n≤…...

小山菌_代码随想录算法训练营第三十天|122.买卖股票的最佳时机II、55. 跳跃游戏 、45.跳跃游戏II、1005.K次取反后最大化的数组和

122.买卖股票的最佳时机II 文档讲解&#xff1a;代码随想录.买卖股票的最佳时机II 视频讲解&#xff1a;贪心算法也能解决股票问题&#xff01;LeetCode&#xff1a;122.买卖股票最佳时机II 状态&#xff1a;已完成 代码实现 class Solution { public:int maxProfit(vector<…...

SpringMVC系列七: 手动实现SpringMVC底层机制-上

手动实现SpringMVC底层机制 博客的技术栈分析 &#x1f6e0;️具体实现细节总结 &#x1f41f;准备工作&#x1f34d;搭建SpringMVC底层机制开发环境 实现任务阶段一&#x1f34d;开发ZzwDispatcherServlet&#x1f966;说明: 编写ZzwDispatcherServlet充当原生的DispatcherSer…...

嵌入式web 服务器boa的编译和移植

编译环境&#xff1a;虚拟机 ubuntu 18.04 目标开发板&#xff1a;飞凌OKA40i-C开发板&#xff0c; Linux3.10 操作系统 开发板本身已经移植了boa服务器&#xff0c;但是在使用过程中发现POST方法传输大文件时对数据量有限制&#xff0c;超过1M字节就无法传输&#xff0c;这是…...

什么是js?特点是什么?组成部分?

Js是一种直译式脚本语言&#xff0c;一种动态类型&#xff0c;弱类型&#xff0c;基于原型的高级语言。 直译式&#xff1a;js程序运行过程中直接编译成机器语言。 脚本语言&#xff1a;在程序运行过程中逐行进行解释说明&#xff0c;不需要预编译。 动态类型&#xff1a;js…...

Java 面试题:如何保证集合是线程安全的? ConcurrentHashMap 如何实现高效地线程安全?

在多线程编程中&#xff0c;保证集合的线程安全是一个常见而又重要的问题。线程安全意味着多个线程可以同时访问集合而不会导致数据不一致或程序崩溃。在 Java 中&#xff0c;确保集合线程安全的方法有多种&#xff0c;包括使用同步包装类、锁机制以及并发集合类。 最简单的方法…...

打工人的PPT救星来了!用这款AI工具,10秒生成您的专属PPT

今天帮同事解决了一个代码合并的问题。其实问题不复杂&#xff0c;要把1的代码合到2的位置&#xff1a; 这个处理方式其实很简单&#xff0c;使用 “git cherry-pick hash值” 就可以。 同事直接对我赞许有加&#xff0c;不曾想被领导看到了&#xff0c;对我说了一句&#xff…...

GIT 合拼

合拼有多种方式&#xff1a; 1&#xff09;合拼分支&#xff1a; git merge [source-branch] 2&#xff09;合拼提交 &#xff1a; git cherry-pick [commit-hash] 3&#xff09;合拼单个文件&#xff1a; git checkout [source-branch] – [file] 以上合拼&#xff0c;比如将分…...

利用 Python 和 AI 技术制作智能问答机器人

利用 Python 和 AI 技术制作智能问答机器人 引言 在人工智能的浪潮下&#xff0c;智能问答机器人成为了一种非常实用的技术。它们能够处理大量的查询&#xff0c;提供即时的反馈&#xff0c;并且可以通过机器学习技术不断优化自身的性能。本文将介绍如何使用 Python 来开发一…...

electron系列(一)调用dll

用electron的目的&#xff0c;其实很简单。就是web架构要直接使用前端电脑的资源&#xff0c;但是浏览器限制了使用&#xff0c;所以用electron来达到这个目的。其中调用dll是一个非常基本的操作。 安装 ffi-napi 和 ref-napi 包: npm install ffi-napi ref-napi main.js&…...

VUE3实现个人网站模板源码

文章目录 1.设计来源1.1 网站首页页面1.2 个人工具页面1.3 个人日志页面1.4 个人相册页面1.5 给我留言页面 2.效果和源码2.1 动态效果2.2 目录结构 源码下载万套模板&#xff0c;程序开发&#xff0c;在线开发&#xff0c;在线沟通 作者&#xff1a;xcLeigh 文章地址&#xff1…...

C语言 | Leetcode C语言题解之第162题寻找峰值

题目&#xff1a; 题解&#xff1a; int findPeakElement(int* nums, int numsSize) {int ls_max0;for(int i1;i<numsSize;i){if(nums[ls_max]>nums[i]);else{ls_maxi;}}return ls_max; }...

利用pickle保存和加载对象

使用 pickle.dump 保存下来的文件可以使用 pickle.load 打开和读取。以下是一个示例&#xff0c;展示了如何使用 pickle 模块保存和加载对象&#xff1a; 保存对象 import pickle# 假设有一个对象 obj obj {"key": "value"}# 将对象保存到文件 with ope…...

定制汽车霍尔传感器

磁电效应霍尔传感器、饱和霍尔传感器、非线性霍尔传感器 霍尔传感器原理 霍尔传感器的工作原理基于霍尔效应&#xff0c;即当一块通有电流的金属或半导体薄片垂直地放在磁场中时&#xff0c;薄片的两端会产生电位差。这种现象称为霍尔效应&#xff0c;两端具有的电位差值称为…...

【2024最新华为OD-C/D卷试题汇总】[支持在线评测] LYA的巡演(100分) - 三语言AC题解(Python/Java/Cpp)

&#x1f36d; 大家好这里是清隆学长 &#xff0c;一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解 &#x1f4bb; ACM银牌&#x1f948;| 多次AK大厂笔试 &#xff5c; 编程一对一辅导 &#x1f44f; 感谢大家的订阅➕ 和 喜欢&#x1f497; &#x1f…...

ChatGPT 简介

ChatGPT 是一种基于大型语言模型的对话系统&#xff0c;由 OpenAI 开发。它的核心是一个深度学习模型&#xff0c;使用了 GPT&#xff08;Generative Pre-trained Transformer&#xff09;架构。以下是 ChatGPT 的原理和工作机制的详细介绍&#xff1a; ### GPT 架构 1. **Tr…...

大数据实训室建设可行性报告

一、建设大数据实训室的背景与意义 随着信息技术的飞速发展&#xff0c;大数据已成为推动社会进步和经济发展的重要力量。中高职院校作为技能型人才培养的摇篮&#xff0c;承担着为社会输送大数据领域高素质、高技能人才的重要任务。因此&#xff0c;建设大数据实训室&#xf…...

学懂C#编程:让函数返回 多个返回值 的几种常用技术

1. 使用 out 或 ref 参数 out 和 ref 参数允许方法修改传入变量的值&#xff0c;并通过它们“返回”多个值。ref 需要变量事先初始化&#xff0c;而 out 不要求。 public void GetValues(out int val1, out string val2) {val1 10;val2 "Hello"; }// 使用示例 int…...

蔚来汽车AI算法工程师,如何理解注意力?

大家好啊&#xff0c;我是董董灿。 今天分享一个上海蔚来汽车的AI算法岗位面试经验总结帖&#xff0c;面试岗位为算法工程师。 这次面试提到的问题&#xff0c;除了与实习相关内容和反问之外&#xff0c;面试官总共问了8个问题&#xff0c;主要集中在深度学习基础概念的理解上…...

信创适配评测

概叙 信创科普参考&#xff1a;全面国产化之路-信创-CSDN博客 有必要再解释一下两个名词“28N”&#xff0c;“79号文件”&#xff0c;因为“28N”指定了由政府牵头从各领域开启国产化的基调&#xff0c;而“79号文件”则指定了国产化的截止日期2027年。 信创的本质是实现中国信…...

【Qt6.3 基础教程 04】探索Qt项目结构和配置文件

文章目录 前言Qt项目的基本结构配置文件&#xff1a;.pro文件基本构成示例.pro文件&#xff1a; qmake和构建过程步骤简述&#xff1a; 修改项目设置结论 前言 当你开始使用Qt进行开发时&#xff0c;理解项目结构和配置文件的作用是至关重要的。这篇博文将带你深入了解Qt项目的…...

SpringBoot测试实践

测试按照粒度可分为3层&#xff1a; 单元测试&#xff1a;单元测试&#xff08;Unit Testing&#xff09;又称为模块测试 &#xff0c;是针对程序模块&#xff08;软件设计的最小单位&#xff09;来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。在过程化编程中…...

Flask-OAuthlib

Flask-OAuthlib库教程 Flask-OAuthlib 是一个为 Flask 应用提供 OAuth1 和 OAuth2 支持的库。它允许开发者轻松地集成第三方 OAuth 服务&#xff0c;或者构建自己的 OAuth 提供者服务。 官方文档链接 Flask-OAuthlib官方文档 架构概述 Flask-OAuthlib 的主要组件包括&…...

树和森林.

目录 一、树 1.1树的存储结构 1.1.1双亲表示法 1.1.2孩子链表 1.1.3孩子兄弟表示法 1.2树与二叉树的转换 1.2.1将树转换成二叉树&#xff1a; 1.2.2将二叉树转换成树 二、森林 2.1森林与二叉树的转换 2.1.1将森林转换成二叉树 2.1.2二叉树转换成森林 三、树和森林的…...

ubuntu下同时安装和使用不同版本的库 librealsense

apt 安装的最新版本在/usr 源码安装的旧版本在/usr/local set(realsense2_DIR /usr/local/) find_package(realsense2 2.50.0 REQUIRED) message( "\n\n ${realsense2_INCLUDE_DIR} ${realsense2_VERSION} RealSense SDK 2.0 is FINDINGING, please install it from…...

openEuler操作系统下静默安装Oracle19c

在openEuler-23.09上安装Oracle19c,创建非容器数据库实例(含静默安装) 操作系统版本 openEuler-23.09-x86_64-dvd.iso ,安装步骤此处省略。。。 最常用且直接的方法来查看openEuler的版本号是查看/etc/os-release文件 [root@openEuler ~]$ cat /etc/os-release NAME="…...

Linux CPU常见命令行详解

在Linux系统中&#xff0c;命令行是管理和监控系统资源的重要工具。特别是当我们需要了解CPU的状态、性能和利用率时&#xff0c;一系列命令行工具就显得尤为重要。本文将详细介绍Linux中与CPU相关的常见命令行工具及其使用方法&#xff0c;帮助大家更好地理解和利用这些工具来…...

防止更新或保存 Laravel 模型

例如&#xff0c;创建模型后&#xff0c;我不希望任何人能够再次更新该记录。相反&#xff0c;它应该被全新的记录覆盖并存档。 这是一个简单的特征&#xff0c;您可以在模型上使用它来禁用更新&#xff1a; trait PreventsUpdating {public static function bootPreventsUpd…...

Cadence:Conformal系列形式验证工具

Conformal 工具最早由Verplex Systems开发。Verplex是一家专注于形式验证工具开发的公司&#xff0c;其核心产品是Conformal等效性检查工具。由于其技术的先进性和市场需求&#xff0c;Verplex的 Conformal工具迅速在半导体行业内获得了认可。 2003 年&#xff0c;Cadence Desi…...