Postman笔记

news2024/10/5 22:22:51

文章目录

    • 1.安装
    • 2.简介和使用流程
    • 3 postman使用
      • 3.1 测试集与HTTP请求
        • 发送HTTP请求和分析响应数据
      • 3.2 发送HTTP请求和分析响应数据
      • 3.3 Postman中请求体提交方式
      • 3.4 Postman使用之接口测试
      • 3.5 使用Postman新建一个mock服务
      • 3.6 请求数据的参数化
      • 3.7 断言与脚本导出

1.安装

官网地址
ubuntu下下载既可用,打开桌面出现图标时间,固定到收藏夹就可以。

2.简介和使用流程

  • Postman是一款功能强大的网页调试与发送网页HTTP请求、并运行测试用例的 Web API 测试工具
  • 能够模拟各种 HTTP
  • Request:从常见的 GET,POST 到 RESTful 的PUT、DELETE …
  • 还可以发送文件、额外的 header
    postman的使用流程
    postman的使用流程
    主界面:
    在这里插入图片描述
    菜单栏
    在这里插入图片描述

3 postman使用

3.1 测试集与HTTP请求

发送HTTP请求和分析响应数据

1. 创建一个测试集
新建
在这里插入图片描述

选择新建一个测试集
在这里插入图片描述

给测试集起名,点击创建
在这里插入图片描述
2、添加请求
创建一个不带参数的get请求
在测试集中创建一个get请求(不带参数)输入请求相关的信息
在这里插入图片描述
给请求命名和添加描述
在这里插入图片描述
指定请求所在的测试集
在这里插入图片描述
该请求的位置便位于test测试集下的baidu测试集下
在这里插入图片描述
点击该请求,打开
在这里插入图片描述
发送请求
在这里插入图片描述
使用快捷键 ctrl+S,保存该请求,后面可以重复利用。

3.2 发送HTTP请求和分析响应数据

发送一个GET请求(不带参数)并分析响应值
发送一个GET请求(带参数)并分析响应值
发送一个POST请求并分析响应值

1、创建一个不带参数的get请求(v2ex)
在这里插入图片描述
首先创建一个集合,v2ex
在这里插入图片描述
在这里插入图片描述
新建一个请求
在这里插入图片描述
指定v2ex集合,点击创建
在这里插入图片描述
创建完成后,在地址栏中输入请求的url :https://www.v2ex.com/api/topics/hot.json
在这里插入图片描述
查看返回的相关信息
在这里插入图片描述
网页页面上的内容
在这里插入图片描述
在这里插入图片描述
则对应相关json数据的内容
在这里插入图片描述
2.创建一个带参数的get请求(v2ex)
2.1 节点信息
获取节点的名字,简介,URL及头像图片的地址
name :节点名
在这里插入图片描述
创建一个新的请求
在这里插入图片描述
输入url :https://www.v2ex.com/api/nodes/show.json
若在url中没有带上相关参数,则返回的json数据是没有我们需要的相关信息的
在这里插入图片描述
输入url :https://www.v2ex.com/api/nodes/show.json?name=python
带上相关参数后,相关的json数据
在这里插入图片描述
其中,json数据中url这一条数据对应的网址,就是浏览器地址栏中的网址
在这里插入图片描述
在这里插入图片描述
2.2 用户主页
在这里插入图片描述
获取指定用户的自我介绍,及其的登记的社交网站信息

username :用户名
id :用户在v2ex中的数字id

1.创建一个新的请求
在这里插入图片描述

  • 输入url :https://www.v2ex.com/api/members/show.json?id=233016
    在这里插入图片描述
  • 网页上的用户名称及id
    在这里插入图片描述
    3、 创建一个post请求(v2ex)
  • 输入请求地址
  • 选择请求方式为post
  • 输入各项参数

新建一个请求
在这里插入图片描述
填写相关参数,发送数据
该参数的上传是以 form 表单的形式上传,所有,在 Body 中选择 form-data ,以 key-value 的形式上传参数
在这里插入图片描述
返回的数据默认为HTML格式,将其改为json格式
在这里插入图片描述
若再点击一次发送,返回的数据
在这里插入图片描述

3.3 Postman中请求体提交方式

x-www-form-urlencoded
在这里插入图片描述
x-www-form-urlencoded 对应的是请求头中 Content-Type 为 application/x-www-from-urlencoded 类型,会将表单内的数据转换为键值对
在这里插入图片描述
相当于提交的 url 为 http://10.79.3.181:8998/marketing/externalInvoke/orderSearch?channel=SC&departmentId=3601&orderId=2020080406039

做接口测试的时候,有时候你会发现通过键值对这种方式上传参数
在这里插入图片描述
在这里插入图片描述
通过抓包发现,明明上传内容没有错,但是请求就是不成功,可能是参数对应的类型不正确,也可能是其他原因,当请求参数比较少时,推荐将请求的参数内容直接放在url后面,然后可能就成功了

form-data
在这里插入图片描述
form-data 对应的是 http请求中的 multipart/form-data ,它会将表单的数据处理为一条消息,以标签为单元,用分隔符分开。既可以上传键值对,也可以上传文件。当上传的字段是文件时,用 Content-Type 来说明文件类型、可能还会有content-disposition 说明字段的一些信息;

由于有 boundary隔离,所以 multipart/form-data 既可以上传文件,也可以上传键值对,它采用了键值对的方式,所以可以上传多个文件

raw
raw 可以上传任意格式的文本,可以上传 text、json、xml、html 等

在这里插入图片描述
在做接口测试的时候,接口文档中请求参数通常都是 json格式 的内容,所以这种方式也是用的最多的一种,Postman 比较好的一点是,假如你的 json 内容有误,比如少了个逗号,少了个冒号,会在页面上提示你

binary
binary 对应的是请求头中 Content-Type 为 application/octet-stream。
从字面意思得知,只可以上传二进制数据,通常用来上传文件,由于没有键值,所以,一次只能上传一个文件。这种方式一般用的比较少

3.4 Postman使用之接口测试

QQ注册接口测试
网址 https://ssl.zc.qq.com/v3/index-chs.html

1、获取接口
每输入一项资料,都会有一条新的数据产生,这个是校验,校验格式是否正确
在这里插入图片描述
输完所有资料后,点击立即注册,此时产生了一条 post 的请求,由此获取注册的接口
在接口测试中,会拿到开发给的对应的接口文档,抓取接口的时候,只需要在左边筛选对应的接口名称即可
接口url :https://ssl.zc.qq.com/cgi-bin/zc/get_acc
在这里插入图片描述
往下拉,在 form-data一栏,还能看到输入的数据,当然密码已加密
在这里插入图片描述
除了请求的参数,还要注意请求头的内容,里面有些内容也是要写在接口里面的,否则会返回其他内容的失败,比如没有浏览器头
在这里插入图片描述
以上就是上传的数据

2、使用 Postman 进行接口测试
在test测试集下新建一个QQ测试集
在这里插入图片描述
在这里插入图片描述

新建一个post请求
在这里插入图片描述
在这里插入图片描述
输入请求参数内容,注意前面抓取的接口中,请求头中显示的请求方式为 application/x-www-form-urlencoded,这里需与之对应
在这里插入图片描述
在这里插入图片描述
这里就不测试正常注册成功的情况(腾讯给出的接口,哪有这么简单就让你注册成功),测试输入验证码错误返回的内容

3.5 使用Postman新建一个mock服务

接口信息

接口路径	/mock/testdemo

请求头
Content-Type	application/json
token	21232f297a57a5a743894a0e4a801fc3

请求体
{
  "memberid": "264903145",
  "phonenum": "17379797878",
  "msg": {
      "Country": "中国",
      "Province": "广东省",
      "City": "广州市",
      "Isp": "电信"
  },
  "type_code": 0
}

响应体
{
    "code": "0000",
    "msg": {
        "result": "success",
        "memberinfo": "白银会员",
        "membertype": "1"
    }
}

新建一个Mock服务
1、打开 Postman,点击左上角New,选择Mock Server
在这里插入图片描述

2、编辑Mock请求信息
在这里插入图片描述

这里选择Create a new API,新建一个Mock的API接口。

Method选择对应的请求方式
Request Path填写接口路径信息,
Request Body填写请求体信息(需要再右侧设置中勾选该选项)
Response Code填写响应码
Response Body填写响应体信息
3、配置Mock服务信息doc

在这里插入图片描述
填写Mock服务的名称(可用中文),勾选Make this Mock server private(可以不勾选),这个Mock服务就只能你自己私有访问

在这里插入图片描述
黄色部分就是Mock服务器地址

如果需要对这个Mock服务创建API key,可以点击here打开一个浏览器页面,需要生成一个API key,

在这里插入图片描述
命名API key
在这里插入图片描述
生成秘钥信息

在这里插入图片描述
后面访问这个接口的时候,必须在请求头里带上 API key,才能访问成功,相当于一个接口鉴权的作用

4、Mock服务创建成功

在这里插入图片描述
还可以对这个需要Mock的接口,再次进行编辑定义,点击Examples,去定义模板规则

在这里插入图片描述
请求头指定Content-Type的类型,加上cookie / token信息,指定返回的响应json信息

在这里插入图片描述
访问Mock服务
可以使用 postman 、jmeter等其他接口测试工具进行访问,这里依旧使用postman

在地址栏中将Mock服务器地址和接口路径拼接成URL,填写对应的参数,发送请求
在这里插入图片描述
可以发现接口响应的内容,就是定义的Examples中的内容

3.6 请求数据的参数化

Postman中的参数化
参数化实例
post 请求
新建一个测试集,新建一个请求
在这里插入图片描述
新建一个请求
在这里插入图片描述
填写相关参数
在这里插入图片描述
参数化设定
将name对应的value值参数化
在这里插入图片描述
新建一个txt文件,txt文件名命名可随意,但里面的内容要与value值对应
在这里插入图片描述保存该txt文件后,运行runner

在这里插入图片描述
runner运行
在这里插入图片描述
运行前可预览
在这里插入图片描述
运行结果
在这里插入图片描述
在这里插入图片描述
第一条数据是成功的,后面3条都是失败的,因为邮箱重复了
在这里插入图片描述

3.7 断言与脚本导出

加入断言(检查点)
Postman通过tests进行断言的插入

  • 断言一定是在请求之前定义好,相当于一个预期的期望结果

自行编写断言

  1. 将要发送的参数修改为正确的参数

在这里插入图片描述
2.使用 tests 进行断言
在这里插入图片描述

tests["timeout is less than 2000ms"]=responseTime < 2000;
tests["Status Code"]=responseCode.Code === 200;
  1. 查看结果
    在这里插入图片描述
    在这里插入图片描述
    Postman自带断言
    在这里插入图片描述
    在这里插入图片描述
    生成并导出接口脚本(Python版)
    点击Code导出源代码
    在这里插入图片描述
    指定语言格式
    在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

外汇天眼:过度交易是大忌,交易不是越多越好!

过度交易是交易中的大忌&#xff0c;因为交易并不是越多越好。为什么我们倾向于将交易失败归因于心态呢&#xff1f;这可能是因为我们认为一笔交易成功和失败的概率都是50%&#xff0c;从而让人们误以为他们具备盈利的能力。然而&#xff0c;如果我们具备盈利的能力&#xff0c…

【Java基础学习打卡21】流程控制

目录 前言一、流程控制的重要性二、流程控制结构1.顺序结构2.分支结构3.循环结构 三、顺序结构总结 前言 无论是哪种编程语言&#xff0c;都会提供流程控制结构&#xff1a;顺序结构、分支结构和循环结构。其实计算机之所以能够完成很多自动化的任务目标&#xff0c;因为它可以…

Flutter笔记:图片的 precacheImage 函数

Flutter笔记 图片的 precacheImage 函数 作者&#xff1a;李俊才 &#xff08;jcLee95&#xff09;&#xff1a;https://blog.csdn.net/qq_28550263 邮箱 &#xff1a;291148484163.com 本文地址&#xff1a;https://blog.csdn.net/qq_28550263/article/details/134004572 【简…

执行 SQL 响应比较慢,你有哪些排查思路?

排查思路 如果执行 SQL 响应比较慢&#xff0c;我觉得可能有以下 4 个原因&#xff1a; 第 1 个原因&#xff1a;没有索引或者导致索引失效。 第 2 个原因&#xff1a;单表数据量数据过多&#xff0c;导致查询瓶颈第 3 个原因&#xff1a;网络原因或者机器负载过高。 第 4 个原…

JAVA-编程基础-11-02-文件流

Lison <dreamlison163.com>, v1.0.0, 2023.05.07 JAVA-编程基础-11-02-文件流 文章目录 JAVA-编程基础-11-02-文件流File 构造方法File 常用方法获取功能的方法**绝对路径和相对路径****判断功能的方法****创建、删除功能的方法**目录的遍历递归遍历 RandomAccessFile*…

LeetCode66——加一

LeetCode66——加一 题目描述&#xff1a; 给定一个由 整数 组成的 非空 数组所表示的非负整数&#xff0c;在该数的基础上加一。 最高位数字存放在数组的首位&#xff0c; 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外&#xff0c;这个整数不会以零开头。 示例…

904. Fruit Into Baskets

904. Fruit Into Baskets 原题链接&#xff1a;完成情况&#xff1a;解题思路&#xff1a;参考代码&#xff1a; 原题链接&#xff1a; 904. Fruit Into Baskets https://leetcode.cn/problems/fruit-into-baskets/ 完成情况&#xff1a; 解题思路&#xff1a; 连续数组 -…

Unity BatchRendererGroup 在低端设备上也实现高帧率

在这篇文章中&#xff0c;我们描述了一个小型射击游戏样本&#xff0c;它可以动画和渲染几个交互式对象。许多演示只针对高端pc&#xff0c;但这里的目标是在使用GLES 3.0的廉价手机上实现高帧率。这个例子使用了BatchRendererGroup, Burst编译器和c#作业系统。它运行在Unity 2…

Git基础教程

一、Git简介 1、什么是Git&#xff1f; Git是一个开源的分布式版本控制系统&#xff0c;用于敏捷高效地处理任何或大或小的项目。 Git是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源代码的版本控制软件。 Git与常用的版本控制工具CVS、Subversion等不同&#…

你是否能应对每天数十亿次的IP访问?Top100查找技术解析

亲爱的小伙伴们&#xff0c;大家好&#xff01;我是小米&#xff0c;一个热爱技术&#xff0c;热衷分享的IT小伙伴。今天&#xff0c;我要和大家聊一个程序员面试常见的问题&#xff1a;如何在每天海量IP访问的情况下&#xff0c;使用Java找出访问频率最高的Top 100&#xff1f…

【LeetCode刷题-数组】--344.反转字符串

344.反转字符串 使用双指针&#xff1a; class Solution {public void reverseString(char[] s) {int l 0,r s.length-1;while(l<r){char c s[l];s[l] s[r];s[r] c; l;r--;}} }

鸿蒙HarmonyOS应用开发:多码识别

华为HMS Core的扫码接口更适用于简单的个人使用。在商业环境&#xff0c;如货架、医用试管、图书馆书架等&#xff0c;常常遇到复杂的多码扫描需求&#xff0c;这时需要专业的扫码SDK。尽管当前市场上的主流商业SDK尚未支持鸿蒙HarmonyOS&#xff0c;但我们仍可以通过HTTP请求来…

「干货分享」如何使用CLion轻松解决C++开发者的7大痛点

CLion是一款专为开发C及C所设计的跨平台IDE&#xff0c;它是以IntelliJ为基础设计的&#xff0c;包含了许多智能功能来提高开发人员的生产力。这种强大的IDE帮助开发人员在Linux、OS X和Windows上来开发C/C&#xff0c;同时它还使用智能编辑器来提高代码质量、自动代码重构并且…

【UE】一个扫描效果(不使用后期处理体积)

效果 步骤 一、制作扫描效果 1. 在3dsmax中新建一个圆形 设置半径为50mm&#xff0c;勾选“自适应” 转换为可编辑多边形 导出 2. 打开虚幻编辑器&#xff0c;导入制作好的模型 3. 创建一个材质&#xff0c;这里命名为“M_Sphere” 打开“M_Sphere”&#xff0c;添加一个“V…

PCIe总线中Root Complex(RC)

在不同的处理器系统中&#xff0c;RC的实现有较大差异。PCIe总线规范并没有规定RC的实现细则。在有些处理器系统中&#xff0c;RC相当于PCIe主桥&#xff0c;也有的处理器系统也将PCIe主桥称为PCIe总线控制器。而在x86处理器系统中&#xff0c;RC除了包含PCIe总线控制器之外&am…

C语言:实现对单链表的反转 函数封装

需求&#xff1a; 实现对单链表的反转 代码实现&#xff1a; #include <stdio.h>typedef struct node{int data;struct node* next; }NODE;void PrintLink(NODE* phead) {NODE* p phead;while(p ! NULL){printf("%d ",p->data);p p->next;}printf(&…

好商品好内容好运营,图文免佣这些爆单技巧你会吗?

图文带货正在成为抖音电商商家们生意增长的新阵地。不同于平台传统的短视频、直播带货&#xff0c;图文体裁以其用户需求大、消费粘性高、深度互动强、正向反馈好的优势&#xff0c;令商家们看到生意新可能&#xff1b;而几张图背景音乐就能实现图文带货的便捷&#xff0c;也为…

瞬态抑制二极管TVS的核心参数?|深圳比创达电子EMC(上)

TVS二极管具有响应速度快、漏电流小、钳位电压稳以及无寿命衰减的特性&#xff0c;从小到信号线静电防护&#xff0c;大到电力系统抗雷击浪涌&#xff0c;TVS都发挥着至关重要的作用。本章对瞬态抑制二极管TVS核心参数展开分析&#xff0c;供产品选型参考。接下来就跟着深圳比创…

PCIe架构的处理器系统介绍

不同的处理器系统中&#xff0c;PCIe体系结构的实现方式不尽相同。PCIe体系结构以Intel的x86处理器为蓝本实现&#xff0c;已被深深地烙下x86处理器的印记。在PCIe总线规范中&#xff0c;有许多内容是x86处理器独有的&#xff0c;也仅在x86处理器的Chipset中存在。在PCIe总线规…

初识Node.js开发

一、Node.js是什么 1.node.js是什么 官方对Node.js的定义&#xff1a; Node.js是一个基于V8 JavaScript引擎的JavaScript运行时环境。 也就是说Node.js基于V8引擎来执行JavaScript的代码&#xff0c;但是不仅仅只有V8引擎&#xff1a; 前面我们知道V8可以嵌入到任何C 应用…