2022接口自动化测试工具Postman 使用教程

2023-11-05

一、Postman接口测试概述

1.1   接口测试

接口是指对协定进行定义的引用类型,通俗讲是就是软件系统不同组成部分衔接的约定。接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。

接口测试就是通过接口规范文档上的调用地址、请求参数,拼接报文,然后发送请求,检查返回结果,它只需测入参和出参就行了。接口测试在接口开发完成后就可以进行测试,无需查看页面UI,仅关注于接口的入参与出参,接口测试属于黑盒测试。

接口测试工具有很多如soapUI、postman、jmeter等,本文介绍postman。

1.2   Postman主要特征

Postman是由Postdot Technologies公司打造的一款功能强大的调试HTTP接口的工具,它最早是Chrome中最受欢迎的插件之一,现已扩展到Mac,Windows和Linux客户端。软件功能非常强大,界面简洁明晰、操作方便快捷,设计得很人性化

  • 简单易用的图形用户界面

  • 保存API请求的历史记录

  • 无限制的使用集合、环境变量、运行测试和共享集合

  • 可用集合Runner来自动化测试

  • 灵活的API监控,运行时间、性能和准确

二、主界面功能解析

打开postman,主界面如下

2.1   左侧菜单

1.History标签

里面存储的是使用postman发送过的请求,postman会把每一个请求自动保存到history标签,可以起到一个查询的作用

2.Collections

集合,创建集合有助于我们对不同接口进行分类管理:比如不同程序的接口、同一个程序不同功能类别的接口,通过集合来区分它们,看起来简洁明了,方便后续的维护

同时我们在创建集合后,也可以一次性执行集合中的所有请求,不必再一个个单独运行

(1) 创建一个顶级集合:点击Collections下方的“文件夹”图标即可

(2)在一个集合中创建子集合:选中一个集合,然后按下鼠标右键,选择"Add folder"

ps.右键一个集合后可以看到许多操作按钮,如重命名、导出、删除等

2.2   顶部菜单

New按钮:

提供创建请求、集合、环境、文档、mock服务器和监控器的入口

Import按钮:

提供集合导入、环境导入等的入口

Runner按钮:

打开collection runner窗口,能够批量执行一个collections中的请求,同时生成报告

Open New按钮:

用于打开一个新的tab、一个新的Postman窗口、一个新的collection runner

设置:

Trim keys and values in request body:如果使用form-data或者url-encoded的方式向服务器发送数据;将该选项设置为ON,则会引起参数左右两侧的空格被删除

SSL certificate verification:防止应用程序在发出请求时检查SSL证书的有效性

Language detection:将此设置为JSON将强制执行JSON呈现,而不管响应Content-Type标头

Request timeout in ms(0 for infinity):在显示服务器没有响应之前,设置应用等待响应的时间(单位时ms)。 0表示无穷大-Postman将永远等待响应

Send no-cache header:发送一个no-cache标头可以确保请求从服务器获得最新的响应,而不是缓存数据

Send Postman Token header:这主要用于绕过Chrome中的错误。如果XmlHttpRequest处于挂起状态,并且使用相同的参数发送另一个请求,则Chrome会为它们返回相同的响应。发送随机令牌可避免此问题。这也可以帮助我们在服务器端区分请求

Retain headers when clicking on links:如果点击响应报文中的链接,Postman会使用该URL创建一个新的GET请求。如果希望该请求继续使用前一次请求中的头部信息,该选项就应该设置为ON;这个选项对于访问受保护的资源非常有用

Automatically follow redirects:阻止返回300系列响应的请求被自动重定向

Send anonymous usage data to Postman:说白了就是是否同意Postman采集我们的使用信息

2.3   右侧菜单

                   

上面是发送请求request模块,下面是响应response模块

1.请求

选择请求方法,填写请求url、参数,点击【send】即可发送一次请求

2.响应

发送请求后,接收到的响应内容会在response模块展示

三、Postman发送请求

3.1   GET请求

通常用于请求服务器发送某个资源,请求的数据会附在URL之后,以?分割URL和传输数据,多个参数用&连接

1.请求方法选择GET

2.在request url处输入请求url

3.点击Params,会弹出键值输入框,可以添加多个参数,填写好的参数会自动拼接到url中(如果添加的url已经有参数,postman会自动将url的参数分成键-值对两部分)

当然也可以根据需要在Headers添加请求头信息

3.2   POST请求

POST方法一般用来向服务器输入数据,它把提交的数据放置在是HTTP包的包体中

1.请求方法选择POST

2.在request url处输入请求url

3.请求方法选为POST后,请求栏下的Body栏会高亮,也就是可以向request body中填充数据(添加再body种的参数并不会追加到url后面)

Body中有4种数据填充形式,分别为:form-data、x-www-form-urlencoded、raw、binary

(1)form-data

表示http请求中的form-data方式,会将表单的数据处理为一条消息,用分割符隔开,可以上传键值对或者上传文件:

(2)x-www-form-urlencoded

会把表单数据转换为键值对

form-data与x-www-form-urlencoded的区别

form-data:可以上传文件或者键值对,最后都会转化为一条消息

x-www-form-urlencoded:只能上传键值对,而且键值对都是通过&间隔分开的

(3)raw

可以上传任意格式的文本,文本不做任何修饰传到服务端。比如传一些xml,或者json数据,或者text文本数据

(4)binary

只可以上传二进制数据,通常用来上传文件,但是一次只能上传一个文件

注意:我们在设置post请求时,并没有特意设置请求头,工具自动为请求添加了请求头,body为x-www-form-urlencoded格式的数据时header如下

响应:1.点击 Send 即可发送请求

在下面的response模块显示返回信息

需特别注意的是注意区别HTTP状态码与响应正文中的状态码,只有HTTP状态码是200时,才代表这个接口请求是正确的,这个是HTTP协议定义的,而响应正文的状态码,是程序员自已定义的,可以是200,也可以定义为其它值,是为了让接口使用者去区分正常数据与异常数据。

2.可以根据需要选择响应体的查看方式

(1)Pretty

Pretty模式可以格式化JSON或XML响应报文,以便更容易查看。没有人希望通过缩小的单行JSON响应来寻找我们需要的字符串!突出显示Pretry模式中的链接,点击它们,可以通过链接URL在Postman中加载GET请求。为了浏览较大的响应报文,可以单击左侧的向下指向的三角形(▼)折叠响应报文

为了让Postman自动格式化响应报文,我们确保返回正确的Content-Type请求头。如果API没有返回Content-Type请求头,则可以通过JSON或XML强制进行格式设置。我们可以通过从“语言检测”下拉列表中选择“JSON”,或者在SETTINGS模式内的常规选项卡下强制默认显示为JSON格式

(2)Raw

Raw视图只是最原始的方式显示响应报文的内容

(3)Preview

Preview模式在沙箱中以iframe的形式呈现响应。默认情况下,某些Web框架会返回HTML错误,所以预览模式在此处特别有用

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2022接口自动化测试工具Postman 使用教程 的相关文章

  • 新入职一个00后卷王,每天加班到2点,太让人崩溃了····

    在程序员职场上 什么样的人最让人反感呢 是技术不好的人吗 并不是 技术不好的同事 我们可以帮他 是技术太强的人吗 也不是 技术很强的同事 可遇不可求 向他学习还来不及呢 真正让人反感的 是技术平平 却急于表现自己的人 每天加班到12点 在老
  • 软件测试|使用Python轻松裁剪视频

    简介 裁剪视频是在视频编辑和处理中常见的任务之一 Python提供了多种库和工具 可以用来裁剪视频 在本文中 我们将详细讨论如何使用Python来裁剪视频 并提供示例代码 步骤1 环境准备 首先 我们要安装必要的Python库 我们将使用
  • 软件测试|深入了解Python中的super()函数用法

    简介 Python中的super 函数是一种强大的工具 用于在子类中调用父类的方法 它在面向对象编程中非常有用 可以让你轻松地扩展和重用现有的类 本文将详细介绍super 函数的用法 并提供一些示例来帮助你更好地理解它的功能 什么是supe
  • 软件测试|Python中如何提取列表中索引为奇数的元素

    简介 在Python中 我们经常需要从列表中提取特定位置的元素 如果我们想要提取列表中索引为奇数的元素 可以使用一些简单的方法来实现这一目标 本文将介绍如何在Python中提取列表中索引为奇数的元素 并提供示例代码来帮助大家更好地理解这个过
  • 软件测试|使用matplotlib绘制平行坐标系图

    简介 绘制平行坐标系图 Parallel Coordinates Plot 是一种用于可视化多维数据的强大方法 在这篇文章中 我们将介绍如何使用Matplotlib库创建平行坐标系图 以及如何解释和定制这种图表 我们将使用一个示例数据集来演
  • 软件测试|使用Python读写yaml文件,你会了吗?

    简介 YAML YAML Ain t Markup Language 是一种可读的数据序列化格式 它常用于配置文件和数据交换 Python 提供了许多库来处理 YAML 文件 在本文中 我们将探讨如何使用 PyYAML 库来读取和写入 YA
  • 软件测试|教你使用Python下载图片

    前言 我一直觉得Windows系统默认的桌面背景不好看 但是自己又没有好的资源可以进行替换 突然我一个朋友提醒了我 网络上的图片这么多 你甚至可以每天换很多个好看的背景 但是如果让我手动去设置的话 我觉得太麻烦了 我不如使用技术手段将图片下
  • 软件测试|如何使用selenium处理iframe富文本输入框

    简介 在网页开发中 富文本框是常见的元素 用于输入富文本内容 如富文本编辑器或邮件编辑器 如果我们要使用Python和Selenium进行自动化测试或操作这种富文本框 可能会遇到一些挑战 本文将详细介绍如何使用Python和Selenium
  • Python自动化测试 | 如何使用Robot Framework进行自动化测试?

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 如何写好一个错误报告

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • Jmeter 性能-阶梯式性能指标监听

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 月薪2W的软件测试工程师,到底是做什么的?

    在生活中 我们常常会遇到以下几种窘迫时刻 准备骑共享单车出行 却发现扫码开锁半天 车子都没有反应 手机导航打车 却发现地图定位偏差很大 司机总是跑错地方 买个水 却遭遇自动售货机吐币 或者不找零钱 好不容易休息打个游戏 却一直出现卡顿 闪退
  • Python常用的自动化小脚本!

    一 list转json string转json 可以使用Python内置的 json 模块将列表 List 和字符串 String 转换成JSON格式 List转JSON假设我们有一个列表 List my list apple banana
  • 2024拒绝行业内卷!八年软件测试20K*16薪行业心得 想入行必看

    目前工作做软件测试工作8年 属于高级测试员那个级别吧 现在看到各行各业的人都在转行学习软件测试 想给大家一些学习建议和忠告 很多粉丝都跟我说今年行情很差 找不到工资 真的找不到工作了吗 我们常在网上看到的 程序员饱和 程序员过剩 其实一般是
  • 做测试不会 SQL?超详细的 SQL 查询语法教程来啦!

    前言 作为一名测试工程师 工作中在对测试结果进行数据比对的时候 或多或少要和数据库打交道的 要和数据库打交道 那么一些常用的sql查询语法必须要掌握 最近有部分做测试小伙伴表示sql查询不太会 问我有没有sql查询语法这一块的文档可以学习
  • 程序员找工作难!拿到外包公司的 offer 我应该去么?

    引言 前一阵子有一个帖子引起了非常广泛的讨论 描述的就是一个公司的外包工作人员 加班的时候因为吃了公司给员工准备的零食 被公司的HR当场批评 这个帖子一发出来 让现在测试行业日益新增的外包公司备受关注 那么外包公司和非外包公司有什么样的不一
  • 软件测试/测试开发/全日制/测试管理丨Android WebView 技术原理

    Android WebView是一个内置的组件 允许在Android应用中嵌套显示Web内容 Android WebView的技术原理涉及到使用WebKit引擎来渲染Web内容 并提供一系列API和回调函数 使得开发人员可以控制和定制Web
  • 外包干了2个月,技术倒退2年。。。

    先说一下自己的情况 本科生 20年通过校招进入深圳某软件公司 干了接近4年的 功能测试 今年国庆 感觉自己不能够在这样下去了 长时间呆在一个舒适的环境会让一个人堕落 而我已经在一个企业干了四年的功能测试 已经让我变得不思进取 谈了3年的女朋
  • Web自动化测试 —— cookie复用

    一 cookie简介 cookie是一些数据 存储于用户电脑的文本文件中 当web服务器想浏览器发送web页面时 在链接关闭后 服务端不会记录用户信息 二 为什么要使用Cookie自动化登录 复用浏览器仍然在每次用例开始都需要人为介入 若用
  • Airtest自动化测试工具

    一开始知道Airtest大概是在年初的时候 当时 看了一下官方的文档 大概是类似Sikuli的一个工具 主要用来做游戏自动化的 通过截图的方式用来解决游戏自动化测试的难题 最近 移动端测试的同事尝试用它的poco库来做自动化 看样子还不错

随机推荐

  • Windows 10 系统服务的 “自动(延迟启动)” 时间

    简而言之 设置为Automatic的服务将在引导过程中启动 而设置为Delayed的服务将在引导后立即启动 启动服务延迟可以提高服务器的启动性能 并且具有安全性优势 这些优势在Adriano的文章中列出 默认情况下 自动 延迟启动 实际上是
  • 牛客网Verilog快速入门题目收获——异步复位的串联T触发器(VL2)

    一 题目要求 给出信号示意图以及波形示意图 用verilog实现两个串联的异步复位的T触发器的逻辑 二 完成题目前的知识储备 1 书写规范 根据verilog代码书写规范 低电平复位信号用 rst n 高电平复位用rst 这里题目低电平复位
  • 优秀的框架stylefeng——guns/roses

    Guns基于SpringBoot 致力于做更简洁的后台管理系统 完美整合springmvc shiro mybatis plus beetl Guns项目代码简洁 注释丰富 上手容易 同时Guns包含许多基础模块 用户管理 角色管理 部门管
  • 平均年薪超105万元,区块链开发待遇这么高?

    近段时间 没有比 区块链 更火的词了 2019年10 月 24 日时国家就区块链技术发展现状与趋势进行第十八次集体学习 学习时着重强调 区块链技术的集成应用在新的技术革新和产业变革中起到重要作用 这意味着区块链技术将加速与产业的融合 也就是
  • 【形形色色的卷积】差分卷积

    文章目录 0 前言 1 中心差分卷积 2 像素差分卷积 3 参考 0 前言 普通卷积不能显式地提取图像的梯度信息 因此不能较好地描述细粒度的纹理信息 在人脸活体检测 边缘检测等对细粒度纹理信息敏感的任务中难以取得理想的结果 针对上述问题 O
  • 梁乾东:4.10黄金下周涨跌怎么看?黄金原油最新策略解析

    黄金下周行情解析 周五 4月9日 上海黄金交易所收涨0 54 报370 11元 克 白银T D收涨0 71 报5267元 公斤 金价收高 主要由于美债收益率下跌 美元短线走弱 也给金价带来短期支撑 但由于全球经济复苏良好 这始终对金价构成下
  • idea报错一个包找不到另一个包 com.j8.enity.User cannot be cast to com.j8.enity.lx

    要注意自己定义的类是否是正确的 否则就会出现这样的错误
  • 阿里天池-全球数据智能大赛

    里面的数据解析 https tianchi aliyun com forum issueDetail spm 5176 12282029 0 0 1549467d4xr1bT postId 62363 用NotePad 或其他的软件打开se
  • 鸽巢算法

    该算法主要用来对给定数据集进行排序的 可以快速求出第N大的数字 时间为常数时间 缺点 数据的范围不能太大 步骤如下 1 给定一个待排序数组 相当于一群鸽子 创建一个备用数组 叫鸽巢数组 并初始化元素为0 备用数组的索引 鸽巢的编号 即是待排
  • 让人工智能机器人学会自我情绪管理

    人类微观管理的一个影响是显而易见的 它会减慢速度 人类也是如此 一个不得不向上级请求命令的人类士兵的反应会比一个有权采取主动的人反应更慢 这对人工智能来说是一个更大的刹车 机器人教育课件它的电子思维过程比人类的神经化学大脑循环要快得多 一个
  • 超详细的Node.js环境搭建

    在使用Node js前 我们需要先进行Node js安装和配置 1 下载 Node js官网地址 https node js org 从官网上可以看到有两个版本的安装包 14 15 1和15 3 0 15 3 0是当前最新版 14 15 1
  • a-table及相关组件的使用

    a table及相关组件的使用 基础的渲染
  • 第38.1节 osg加载大tif-编译vpb

    目录 本节内容 具体内容 本节内容 本节开始实现使用osg加载超大tif的功能 具体有多大的tif可以支持呢 就是要多大有多大 要不是网友们提这个功能 我基本上已经忘记vpb了 它是osg早期关于使用影像和高程大图来生成瓦片地形的这么一个工
  • DeepSpeed 部署中bug以及解决方法

    text generation 1 can t find Rust compiler 在Linux上安装Rust 您可以使用curl或者类似包管理器的工具来安装Rust 使用curl命令安装Rust和Cargo curl proto htt
  • java基础:内部类

    内部类 1 简介 大部分时候 类被定义为一个独立的程序单元 在某些情况下 也会把一个类放在另外一个类的内部定义 这种类就被称为内部类 嵌套类 包含内部类的类也被称为外部类 宿主类 2 作用 内部类提供了更好的封装 可以将内部类隐藏在外部类之
  • 图片上传怎么搞?!阿里云OSS对象存储教你快速实现!

    一 需求背景 小白 辉哥 我想在项目中实现图片上传 不知道有没有好用的第三方文件上传技术呢 辉哥 那多了去了 阿里 腾讯 百度 七牛云等都有文件上传技术 你从中随便挑一个 辉哥这就给你安排 小白 阿里也有文件上传 要不辉哥就给我安排阿里的实
  • Spring Boot 读取配置文件的五种方式

    第一种 Value 方式读取 前提条件 在application properties 文件中 写入相关属性值 customer address USA 读取工具类源码 Component public class CustonerConf
  • Java面试整理(二)《JavaSE》

    JavaSE 说明 我会根据我自己的经验 给每个内容标注重要程度 共有三个等级 低 中 高 仅个人参考意见 JVM是什么 中 JVM是Java Virtual Machine的缩写 是用于运行Java字节码的虚拟机 JVM是运行在操作系统之
  • 30功能之Base64编码原理

    一 Base64的由来 目前Base64已经成为网络上常见的传输8Bit字节代码的编码方式之一 在做支付系统时 系统之间的报文交互都需要使用Base64对明文进行转码 然后再进行签名或加密 之后再进行 或再次Base64 传输 那么 Bas
  • 2022接口自动化测试工具Postman 使用教程

    一 Postman接口测试概述 1 1 接口测试 接口是指对协定进行定义的引用类型 通俗讲是就是软件系统不同组成部分衔接的约定 接口测试是测试系统组件间接口的一种测试 接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点 测