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的使用

相关推荐
可可南木7 小时前
3070文件格式--2--board文件格式详解 2
功能测试·测试工具·pcb工艺
测试老哥9 小时前
2026最新软件测试面试热点问题(含答案+文档)
自动化测试·软件测试·python·测试工具·面试·职场和发展·测试用例
sww_102610 小时前
JVM基础学习
jvm·学习·测试工具
ysn1111110 小时前
.NET性能测试工具BenchmarkDotNet
测试工具·c#
天才测试猿11 小时前
自动化测试基础知识总结
自动化测试·软件测试·python·测试工具·程序人生·职场和发展·测试用例
卓码软件测评11 小时前
CMA/CNAS双资质软件测评机构【Apifox高效编写自动化测试用例的技巧和规范】
测试工具·ci/cd·性能优化·单元测试·测试用例
测试秃头怪12 小时前
支付宝性能测试案例分析详解
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·性能测试
少云清14 小时前
【接口测试】1_Dubbo接口 _xx健康项目
测试工具·接口测试
天才测试猿14 小时前
软件测试之bug分析定位技巧
软件测试·python·selenium·测试工具·职场和发展·测试用例·bug