Postman接口关联

接口关联

接口之间存在依赖关系,接口B要依赖于接口A的返回值。

例如:现在有两个接口,接口1:获取接口统一鉴权码token接口,接口2:创建标签接口。接口2里的请求参数需要依赖接口1返回的值,即需要获取access_token的值,替换ACCESS_TOKEN。

使用json提取器实现接口关联

javascript 复制代码
console.log(responseBody);
//console.log()控制台打印,responseBody返回的值
var result = JSON.parse(responseBody);
//使用JSON提取器提取access_token值
//JSON.parse()把返回的字符串格式的数据转换成对象的形式
console.log(result.access_token);
pm.globals.set("access_token",result.access_token);
//把access_token设置为全局变量,方便接口2访问

关于console控制台 (可以查看打印的信息、接口日志等)

成功取到access_token的值

把access_token设置为全局变量后,点击右上角眼睛(Environment quick look)进行查看

11.6.2版本图标如下

引用全局变量access_token,即ACCESS_TOKEN替换为{{access_token}}

使用正则表达式提取器实现接口关联

正则表达式: (.+?):匹配任意字符,至少1个; (.*?):匹配任意字符,至少0个

正则匹配表达式将需要提取的字段key:value都放入表达式中,将字段名作为键,字段值用表达式进行匹配。

javascript 复制代码
//使用正则表达式提取器实现接口关联,match匹配
var result = responseBody.match(new RegExp('"access_token":"(.*?)"'));
//通过下标取值
console.log(result[1]);
//设置为全局变量
pm.globals.set("access_token",result[1]);

使用文本方式查看结果,确定取值对象。

提取对象里含有双引号,用单引号括起来,' "access_token":"(.*?)" ' 表示字符串,match匹配的是正则表达式,而字符串并不代表是正则表达式,所以把字符串通过new RegExp()的方法来把字符串转换成一个正则表达式。

匹配到两个值,选用下标为1的值,并设置为全局变量,再同上引用全局变量access_token。

参考:

码尚postman学习

相关推荐
Apifox.1 小时前
测试用例越堆越多?用 Apifox 测试套件让自动化回归更易维护
运维·前端·后端·测试工具·单元测试·自动化·测试用例
AI_56782 小时前
K8s新手入门:从“Pod创建”到“服务暴露”,3个案例理解容器编排
人工智能·学习·测试工具
我的offer在哪里2 小时前
Figma 技术深度解析:重新定义协作设计的底层架构与工程实践
测试工具·流程图
猿小羽4 小时前
[TEST] Selenium 自动化测试 - 1769003387277
selenium·测试工具
猿小羽4 小时前
[TEST] Selenium 自动化测试 - 1769003091046
selenium·测试工具
线束线缆组件品替网1 天前
Switchcraft TRS XLR 音频线缆国产兼容设计解析
数码相机·测试工具·电脑·音视频·pcb工艺·智能手表
月明长歌1 天前
Selenium Web 自动化测试脚本总结
java·selenium·测试工具
朝新_1 天前
软件测试---用例
测试工具
卓码软件测评2 天前
软件信创测试和软件首版次认定机构【使用Postman的Pre-request Script动态处理数据】
测试工具·ci/cd·性能优化·单元测试·测试用例