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学习

相关推荐
测试杂货铺3 小时前
Jmeter压测实战:Jmeter二次开发之自定义函数
自动化测试·软件测试·测试工具·jmeter·职场和发展·测试用例·压力测试
测试老哥4 小时前
外包干了两年,技术退步明显。。。。
自动化测试·软件测试·python·功能测试·测试工具·面试·职场和发展
测试19987 小时前
外包干了2年,技术退步明显....
自动化测试·软件测试·python·功能测试·测试工具·面试·职场和发展
Quz9 小时前
Wireshark协议相关功能:过滤、启用/禁用、导出和统计查看
网络·测试工具·wireshark
炭烤玛卡巴卡15 小时前
学习postman工具使用
学习·测试工具·postman
yinshuilan17 小时前
第2节-Test Case如何调用Object Repository中的请求并关联参数
测试工具
互联网杂货铺18 小时前
Postman接口测试:全局变量/接口关联/加密/解密
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·postman
waicsdn_haha18 小时前
Postman最新详细安装及使用教程【附安装包】
测试工具·api·压力测试·postman·策略模式·get·delete
美团测试工程师1 天前
Postman接口测试工具使用详解
测试工具·postman
测试杂货铺1 天前
如何用postman做接口自动化测试及完美的可视化报告?
自动化测试·软件测试·测试工具·职场和发展·jenkins·压力测试·postman