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

相关推荐
PhotonixBay1 天前
共聚焦显微镜测量铜导体表面粗糙度
测试工具·制造
cfm_29141 天前
JVM垃圾收集算法与收集器深度解析
jvm·测试工具·算法·性能优化
Luminbox紫创测控1 天前
金属卤素灯工作原理与汽车零部件老化测试应用
测试工具·汽车·安全性测试·测试标准
赵大大宝1 天前
Selenium 从入门到精通:自动化测试与爬虫实战全攻略
爬虫·selenium·测试工具
zhonghaoxincekj1 天前
基于 168MHz MCU 的直流继电器全参数自动化测试方案解析
经验分享·功能测试·科技·学习·测试工具·创业创新·制造
带土12 天前
5. 网络体系架构与WireShark简单使用
网络·测试工具·wireshark
kiss strong2 天前
自制请求工具request-ui
测试工具
蒲公英内测分发2 天前
在灵感与输出之间挣扎:我与 Typeoff 的交集
测试工具·产品运营·项目管理·语音输入
川石课堂软件测试2 天前
UI自动化测试|元素操作&浏览器操作实践
功能测试·测试工具·mysql·ui·docker·容器·单元测试
Luminbox紫创测控2 天前
AM1.5G光谱在LED太阳模拟器中的工程实现:光谱匹配与均匀性优化(A+级指标)
人工智能·测试工具·5g·安全性测试