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

相关推荐
Wild_Pointer.13 小时前
高效工具实战指南:Beyond Compare文件比较工具
测试工具
Three~stone15 小时前
Wireshark 4.6.4 安装教程
网络·测试工具·wireshark
Luminbox紫创测控2 天前
太阳光模拟器在汽车智能玻璃的运用
测试工具·汽车
西瓜程序猿2 天前
如何将纸质版礼薄转换为电子礼薄?可以使用记了么
测试工具·创业创新
123过去2 天前
crunch使用教程
linux·测试工具·安全
123过去2 天前
samdump2使用教程
linux·测试工具·安全
测试19982 天前
使用Python自动化生成接口测试用例
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
lifewange3 天前
postman接口自动化如何进行参数化
数据库·自动化·postman
妖萌妹儿3 天前
postman怎么做参数化批量测试,测试不同输入组合
开发语言·javascript·postman