Postman笔记

文章目录

    • 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.mzph.cn/news/118163.shtml

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

相关文章

DP读书:《openEuler操作系统》(五)进程与线程

进程与线程 进程的概念程序&#xff1a;从源码到执行1. 编译阶段:2. 加载阶段:3. 执行阶段: 程序的并发执行与进程抽象 进程的描述进程控制块1. 描述信息2. 控制信息3. CPU上下文4. 资源管理信息 进程状态1.就绪状态2.运行状态3.阻塞状态4.终止状态 进程的控制进程控制源语1.创…

CrossOver23.6软件激活码怎么获取 CrossOver软件2023怎么激活

CrossOver一款类虚拟机&#xff0c;它的主要功能是在mac系统中安装windows应用程序。其工作原理是将exe格式的windows应用程序安装包安装至CrossOver容器中&#xff0c;并将运行该exe文件所需的配置文件下载至容器中&#xff0c;便能在mac正常运行windows应用程序了。下面就让我…

如何构建一个外卖微信小程序

随着外卖行业的不断发展&#xff0c;越来越多的商家开始关注外卖微信小程序的开发。微信小程序具有使用方便、快速上线、用户覆盖广等优势&#xff0c;成为了商家们的首选。 那么&#xff0c;如何快速开发一个外卖微信小程序呢&#xff1f;下面就让我们来看看吧&#xff01; 首…

【C++入门:C++世界的奇幻之旅】

1. 什么是C 2. C发展史 3. C的重要性 4. C关键字 5. 命名空间 6. C输入&输出 7. 缺省参数 8. 函数重载 9. 引用 10. 内联函数 11. auto关键字(C11) 12. 基于范围的for循环(C11) 13. 指针空值---nullptr(C11)05. 1. 什么是C C语言是结构化和模块化的语言&…

什么是web3.0?

Web 3.0&#xff0c;也常被称为下一代互联网&#xff0c;代表着互联网的下一个重大演变。尽管关于Web 3.0的确切定义尚无共识&#xff0c;但它通常被认为是一种更分散、更开放且更智能的互联网。 以下是Web 3.0的一些主要特征和概念&#xff1a; 1. 去中心化 Web 3.0旨在减少…

人工智能:CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)的知识梳理

卷积神经网络&#xff08;CNN&#xff09; 卷积神经网络&#xff08;CNN&#xff09;&#xff0c;也被称为ConvNets或Convolutional Neural Networks&#xff0c;是一种深度学习神经网络架构&#xff0c;主要用于处理和分析具有网格状结构的数据&#xff0c;特别是图像和视频数…

CSS中 通过自定义属性(变量)动态修改元素样式(以 el-input 为例)

传送门&#xff1a;CSS中 自定义属性&#xff08;变量&#xff09;详解 1. 需求及解决方案 需求&#xff1a;通常我们动态修改 div 元素的样式&#xff0c;使用 :style 和 :class 即可&#xff1b;但想要动态修改 如&#xff1a;Element-ui 中输入框&#xff08;input&#x…

Windows与Linux服务器互传文件

使用winscp实现图形化拖动的方式互传文件. 1.下载winscp软件并安装&#xff0c;官方地址&#xff1a; https://winscp.net/eng/index.php 2.打开软件&#xff1a; 文件协议选择scp&#xff0c;输入linux服务器的IP和端口号&#xff0c;然后输入你的用户名和密码就可以登陆了。…

postman打开后,以前的接口记录不在,问题解决

要不这些文件保存在C:\Users\{用户名}\AppData\Roaming\Postman 比如&#xff0c;你目前使用的window登录用户是abc&#xff0c;那么地址便是C:\Users\abc\AppData\Roaming\Postman 打开后&#xff0c;这个目录下会有一些命名为backup-yyyy-MM-ddThh-mm-ss.SSSZ.json类似的文…

渗透攻击漏洞——原型链污染

背景 2019年初&#xff0c;Snyk的安全研究人员披露了流行的JavaScript库Lodash中一个严重漏洞的详细信息&#xff0c;该漏洞使黑客能够攻击多个Web应用程序&#xff0c;这个安全漏洞就是一个“原型污染漏洞”&#xff08;JavaScript Prototype Pollution&#xff09;&#xff…

【分布式】大模型分布式训练入门与实践 - 04

大模型分布式训练 数据并行-Distributed Data Parallel1.1 背景1.2 PyTorch DDP1&#xff09; DDP训练流程2&#xff09;DistributedSampler3&#xff09;DataLoader: Parallelizing data loading4&#xff09;Data-parallel&#xff08;DP&#xff09;5&#xff09;DDP原理解析…

图论06-【无权无向】-图的遍历并查集Union Find-力扣695为例

文章目录 1. 代码仓库2. 思路2.1 UF变量设计2.2 UF合并两个集合2.3 查找当前顶点的父节点 find(element) 3. 完整代码 1. 代码仓库 https://github.com/Chufeng-Jiang/Graph-Theory 2. 思路 2.1 UF变量设计 parent数组保存着每个节点所指向的父节点的索引&#xff0c;初始值为…

Java IDEA controller导出CSV,excel

Java IDEA controller导出CSV&#xff0c;excel 导出excel/csv&#xff0c;亲测可共用一个方法&#xff0c;代码逻辑里判断设置不同的表头及contentType&#xff1b;导出excel导出csv 优化&#xff1a;有数据时才可以导出参考 导出excel/csv&#xff0c;亲测可共用一个方法&…

【多线程】Java如何实现多线程?如何保证线程安全?如何自定义线程池?

个人简介&#xff1a;Java领域新星创作者&#xff1b;阿里云技术博主、星级博主、专家博主&#xff1b;正在Java学习的路上摸爬滚打&#xff0c;记录学习的过程~ 个人主页&#xff1a;.29.的博客 学习社区&#xff1a;进去逛一逛~ 多线程 Java多线程1. 进程与线程2. 多线程1&am…

人工智能基础_机器学习001_线性回归_多元线性回归_最优解_基本概念_有监督机器学习_jupyter notebook---人工智能工作笔记0040

线性和回归,就是自然规律,比如人类是身高趋于某个值的概率最大,回归就是通过数学方法找到事物的规律. 机器学习作用: 该专业实际应用于机器视觉、指纹识别、人脸识别、视网膜识别、虹膜识别、掌纹识别、专家系统、自动规划、智能搜索、定理证明、博弈、自动程序设计、智能控制…

【PyTorch】深度学习实践 01 Overview

人工智能概述 课程前置知识 线性代数 概率论 &#xff08;不要有路径依赖&#xff0c;遇到不会的就现学&#xff09;Python基础 人工智能 问题分类 人工智能&#xff0c;实际上就是利用计算机来代替人脑进行智能工作&#xff0c;计算机所要实现的智能可以分为两大部分&am…

python造测试数据存到excel

代码&#xff1a; from ExcelHandler import ExcelHandler from faker import Faker # 导入faker库的Faker方法 # ↓默认为en_US&#xff0c;只有使用了相关语言才能生成相对应的随机数据 fkFaker(locale"zh_CN")def create_date():m int(input(请输入要造的数据条…

PostgreSQL12中浮点数输出算法优化带来的小问题

最近碰到同事发来这样两个SQL&#xff0c;开发反馈输出的结果异常。 bill# select 0.1284*100::float;?column? --------------------12.839999999999998 (1 row)bill# select (0.1284*100)::float;float8 --------12.84 (1 row) 乍一看其实能看出明显的区别&#xff0c;由于…

通俗介绍:什么是 Redis ?

刚接触 Redis 的伙伴们可能会因为不熟悉而感到困惑。本文简述 Redis 是什么、有哪些作用的问题&#xff0c;是一篇短浅而入门级别的文章。 Redis官网&#xff1a;Redis 打开 Redis 官网可以看到&#xff0c;官方对 Redis 的介绍是这样的&#xff1a;The open source, in-memo…