使用postman循环调用某接口

89次阅读

共计 868 个字符,预计需要花费 3 分钟才能阅读完成。

接上篇:使用 postman 创建 collection 测试接口上篇讲了使用 postman 创建工作流,第一步查询到职位列表,并保存 id,第二步根据 id 查询到职位详情。那么这篇讲如何依次查询到列表中的每一个职位详情。核心代码也很简单,就是 postman.setNextRequest()

首先我们需要将接口命名一下,方便调用,分别为 ”search” 和 ”detail”

然后再 search 接口 Tests 中新增代码,保存关键的信息 (postman 中也可以打开 console 窗口,方便调试)
var jobs = pm.response.json().body.JobList.map(function(item){return {id:item.JobID,ref:item.ReferrerType}});
pm.globals.set(“jobs”, jobs);
pm.globals.set(“index”, 0);
console.log(jobs)

在 detail 接口,Pre-request Script 中新增代码:
var index = pm.globals.get(“index”);
pm.globals.set(“index”, ++index);
并在 Tests 中新增代码
var jobs = pm.globals.get(“jobs”);
var index = pm.globals.get(“index”);
if(jobs.length>index) {
pm.globals.set(“id”, jobs[index].id);
pm.globals.set(“ref”, jobs[index].ref);
postman.setNextRequest(‘detail’);
}else {
postman.setNextRequest(null);
}
以上写法只是为了不修改上一篇代码,index 表示当前查询到的列表位置,postman.setNextRequest(‘xxx’) 表示执行下一个 xxx 接口,postman.setNextRequest(null) 则表示终止。

运行结果如下

正文完
 0