Postman自定义脚本Pre-request-script以及Test

这两个都是我们进行自定义script脚本的地方,分别是在请求执行的前后运行。

我们举两个可能经常运用到的场景。

(一)请求A先执行,请求B使用请求A响应结果作为参数。如果我们不用自定义脚本,可能得先执行请求A,然后手动复制响应结果给请求B的参数。而通过自定义脚本,我们可以实现一键执行两个请求。下面我们直接看脚本示例:

这里的示例请求为模拟登录login,然后再次发请求将登录结果发给loginResult

(1)首先设置body,然后再Test中写脚本获取响应结果,并设置到环境变量中

Test脚本如下:

复制代码
console.log("loginRes:"+JSON.stringify(pm.response.json()))
// 将响应结果设置到环境变量中
pm.environment.set("loginResult", JSON.stringify(pm.response.json()));

pm是postman内置的对象,可以通过它获取请求参数,响应结果等信息,也可以设置请求参数、设置环境变量、全局变量等。

(2)然后再第二个请求中的Pre-request Script中写脚本获取响应结果,并设置到参数中

上面是网上给出的body设置方案,但实际是没法设置成功的。查看postman文档,文档中也是不可变的,网上的方案可能是旧版本可以。

正确的做法是:在body中通过引用变量的方式

(3)运行请求

从这个地方运行,会开启一个Collection Runner

点击Run Test即可,可以看到两个请求都执行成功了

(二)我们经常会有多套环境,prod,test,dev,如果每次环境切换都要改每个请求的ip和端口,那太麻烦了。我们可以在collection的Pre-request Scripts中将host、port设置到环境变量中,然后再url中以变量的方式引用进来:

ps:附上一篇自己写的《Postman的使用

相关推荐
小熊出擊1 天前
【pytest】finalizer 执行顺序:FILO 原则
python·测试工具·单元测试·pytest
balance_rui1 天前
操作技巧——vscode.git.
postman
云闲不收1 天前
接口请求工具对比 apifox apipost swagger postman等
测试工具·postman
sitellla2 天前
Testify Go测试工具包入门教程
git·测试工具·其他·golang
我的xiaodoujiao2 天前
从 0 到 1 搭建 Python 语言 Web UI自动化测试学习系列 9--基础知识 5--常用函数 3
前端·python·测试工具·ui
可可南木2 天前
ICT 数字测试原理 8 - -VCL 的测试参数
开发语言·功能测试·测试工具·pcb工艺
Apifox.2 天前
Apifox 9 月更新| AI 生成接口测试用例、在线文档调试能力全面升级、内置更多 HTTP 状态码、支持将目录转换为模块
前端·人工智能·后端·http·ai·测试用例·postman
加油20192 天前
爬虫框架: selenium API使用介绍
爬虫·selenium·测试工具
IDOlaoluo3 天前
Postman-win64-8.6.2-Setup安装教程(附详细步骤,Win64版Postman下载安装指南)
测试工具·postman
运维小菜鸟h3 天前
利用wxpython开发API接口调试工具,类似postman
测试工具·postman