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

相关推荐
测试19981 天前
Python接口测试之requests库安装和导入
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
祉猷并茂,雯华若锦3 天前
Selenium与Playwright元素定位终极对决
selenium·测试工具
小白学大数据3 天前
长周期爬虫的数据一致性:断点续爬 + 事务回滚保障采集质量
开发语言·爬虫·测试工具
小绫网络安全3 天前
Wireshark抓包完全入门教程:从零开始掌握网络分析
arm开发·测试工具·wireshark
梦想不只是梦与想4 天前
鸿蒙 测试工具:DevEco Testing(一)
测试工具·harmonyos·testing
我的xiaodoujiao5 天前
快速学习Python基础知识详细图文教程17--类型注解和断点调试
开发语言·python·学习·测试工具
泽众云测试5 天前
泽众软件与日联科技达成合作,TestOne自动化测试平台助力搭建工业检测装备数字化品控防线
功能测试·测试工具·自动化
小小尚@5 天前
AE脚本-AE Actions v1.1.8 操作动作记录器
开发语言·前端·javascript·jupyter·postman