测试工具 - Postman接口测试入门使用手册,Postman如何进行数据关联、自动更新cookies、简单编程

简介: 测试工具 - Postman接口测试入门使用手册,Postman如何进行数据关联、自动更新cookies、简单编程

       

Postman 接口测试

前言

Postman 是在测试领域里非常流行的接口测试工具。

本文介绍该工具从安装,到录制用例,再到可以流畅的进行用例回放的整个过程。后面还介绍了一些比较实用的方法,比如数据关联、自动更新 cookies。

希望本文从浅入深的不断引导可以帮助到小白可以快速的掌握工具。

一、工具安装

① 获取工具

获取地址:Postman 官网下载

image.png

② 账号登录

刚进来需要创建个新的账户。

image.png

进入首页。

image.png

③ 抓包工具获取

获取地址:Fiddler 官网

image.png

填一下信息就能下载了。

image.png

二、接口测试

① 创建一个目录

创建一个收集夹,用来存放我们录制的接口用例。

image.png

image.png

目录下面可以添加文件夹来进行分类管理,右键来进行文件夹添加。

image.png

image.png

② 编写脚本

录制接口用例,可以直接点击右上角的录制请求 request,也可以直接点击右上角。

image.png

输入用例名,下面可以选择要保存的文件位置,我保存在了我刚才创建的文件夹里。

image.png

请求方式有很多种,是那种形式取决于头部显示的请求方式,上面的加号可以添加新的请求。

image.png

③ 抓取请求

我们利用 fiddler 工具来抓取请求。抓取到的请求查看它的 Raw 格式,可以看到上面是表头参数,下面是 json 表体参数。我们把抓取到的值填到我们建立的用例里。

image.png

④ 填写用例头部

头部参数的第一条填在上面,其它的参数填到下面。通过 Bulk Edit 可以快捷进行头部内容的填写。

image.png

点击 Key-Value Edit 可以切回来。

image.png

⑤ 填写用例主体内容

选择 raw 形式,把表体内容粘进来,再选择 JSON 格式。

image.png

⑥ 测试

点击 send,看返回值是不是对的,图中可以看出我返回了正常的 JSON 数据,证明测试成功了。不确定返回的对不对,可以在正常浏览器里做同样的操作,与开发者工具的 network 看返回值做对比。image.png

一般 json 返回数据会有个状态,也可以通过这个状态看有没有成功。

image.png

⑦ 用例回放

点击左上角的 runner 进入回放页面。

image.png

我们选择必要的脚本,进行回放即可。

image.png

⑧ 设置断言、检查点

我们测试时看 response 返回值,成功的话一般会有标志,我们把这个标志设置为检查点,来看我们的接口是不是成功的。

image.png

点击上面导航栏的 test,然后在右侧选择 Response body: Contains string,然后会多出一些代码,在我圈住的位置把要检测的文本内容填进去。

注意: 如果检测的文本里包含双引号,前面需要加一个正斜杠 " \" 来转义。

image.png

给大家展示两种常用的设置检查点的方式。

// 断言类型1 - 检查返回值
pm.test("Body matches string", function () {
    pm.expect(pm.response.text()).to.include("\"success\":true");
});
// 断言类型2 - 检查状态码
pm.test("Status code is 200", function () {
    pm.response.to.have.status(200);
});

三、高级设置

① cookies 获取

cookies 过一段时间会失效,新增操作如果不取到登录操作返回的 cookies,一段时间后就不能用了。

新建一个环境,用于保存环境变量,每次回放让它自动把新的 cookies 存储到环境变量里。

image.png

后续我们设置完环境变量就能在这里看到。

image.png

可以看到 set-cookis 里面的值就是我们需要的 cookie 信息。

image.png

把上面的环境选择为我们创建的环境。

输入我们提取 cookie 的代码,然后发送下请求。

// 获取返回值头部set-cookie的内容
var jsondata = postman.getResponseHeader("set-cookie");
// 通过;号来分割数据,转化为数组形式
data = jsondata.split(";");
// 设置环境变量,data数组里的第一个值即我们需要的cookie
postman.setEnvironmentVariable("Cookie",data[0]);

image.png

如果设置对的话,测试一下,可以看到我们需要的 cookie 值已经提取出来了。

image.png

然后我们来引用前面的 cookie 环境变量,发送请求就成功了。

image.png

② 数据关联,提取上一个请求的数据

提交动作往往需要该单据保存时生成的 id,这时我们就需要进行上下文数据关联才能提交成功。

// 把responseBody转为json字符串
var data = JSON.parse(responseBody);
// 把templetid提取出来,存到环境变量里
pm.environment.set("templetid", data.data.templetid);

示例中:我想要提取我圈住的这个 json 值。

image.png

可以看到环境变量里已经有这个值了。

image.png

③ 地址栏引用全局变量

设置个全局变量,然后让地址栏引用。

可以直接在环境里添加全局变量。

image.png

两个大括号括起来,就可以引用全局变量了。

还能通过代码来添加全局变量。

// 添加全局变量
pm.globals.set("url", "http://test.nc-cloud.com");

image.png

body 的 raw 引用变量也采用双括号的方式。

image.png

④ json 数据格式化

点击 beautify 可以用来格式 json 数据,方便我们观察数据、处理数据。

image.png

喜欢的点个赞❤吧!

目录
相关文章
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
768 1
|
人工智能 自然语言处理 安全
学不会编程也能写测试?AI让测试更平权
在传统的软件开发体系中,测试常被划分为“技术型测试”(如自动化、性能、安全)和“业务型测试”(如功能验证、用户体验)。前者掌握技术话语权,后者则更多依赖经验和流程规范。然而,随着大语言模型(LLM)等AI技术的迅猛发展,这一固有格局正被悄然打破:
598 10
|
Web App开发 JavaScript 测试技术
Playwright 极速入门:1 小时搞定环境搭建与首个测试脚本
本文带你1小时快速入门Playwright,完成环境搭建并编写首个测试脚本。Playwright是微软推出的现代化Web自动化测试工具,支持Chromium、Firefox和WebKit三大浏览器引擎,具备跨平台、多语言(Python/JS/Java/C#)特性。其核心优势包括:智能自动等待机制减少失败率、内置录制工具实时生成脚本、多语言灵活选择,以及真移动端设备模拟能力,显著提升测试效率和可靠性。
|
JSON 前端开发 测试技术
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
1406 10
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
|
SQL 测试技术
除了postman还有什么接口测试工具
最好还是使用国内的接口测试软件,其实国内替换postman的软件有很多,这里我推荐使用yunedit-post这款接口测试工具来代替postman,因为它除了接口测试功能外,在动态参数的支持、后置处理执行sql语句等支持方面做得比较好。而且还有接口分享功能,可以生成接口文档给团队在线浏览。
883 2
|
机器学习/深度学习 设计模式 测试技术
Python 高级编程与实战:构建自动化测试框架
本文深入探讨了Python中的自动化测试框架,包括unittest、pytest和nose2,并通过实战项目帮助读者掌握这些技术。文中详细介绍了各框架的基本用法和示例代码,助力开发者快速验证代码正确性,减少手动测试工作量。学习资源推荐包括Python官方文档及Real Python等网站。
|
人工智能 自然语言处理 前端开发
CodeArena:在线 LLM 编程竞技场!用于测试不同开源 LLM 的编程能力,实时更新排行榜
CodeArena 是一个在线平台,用于测试和比较不同大型语言模型(LLM)的编程能力。通过实时显示多个 LLM 的代码生成过程和结果,帮助开发者选择适合的 LLM,并推动 LLM 技术的发展。
3223 7
CodeArena:在线 LLM 编程竞技场!用于测试不同开源 LLM 的编程能力,实时更新排行榜
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
1519 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
存储 测试技术 数据库
接口测试工具攻略:轻松掌握测试技巧
在互联网快速发展的今天,软件系统的复杂性不断增加,接口测试工具成为确保系统稳定性的关键。它如同“翻译官”,模拟请求、解析响应、验证结果、测试性能并支持自动化测试,确保不同系统间信息传递的准确性和完整性。通过Apifox等工具,设计和执行测试用例更加便捷高效。接口测试是保障系统稳定运行的第一道防线。
|
Web App开发 JSON 测试技术
API测试工具集合:让接口测试更简单高效
在当今软件开发领域,接口测试工具如Postman、Apifox、Swagger等成为确保API正确性、性能和可靠性的关键。Postman全球闻名但高级功能需付费,Apifox则集成了API文档、调试、Mock与自动化测试,简化工作流并提高团队协作效率,特别适合国内用户。Swagger自动生成文档,YApi开源但功能逐渐落后,Insomnia界面简洁却缺乏团队协作支持,Paw仅限Mac系统。综合来看,Apifox是国内用户的理想选择,提供中文界面和免费高效的功能。