【问题标题】:Postman - how to run requests in different iterationsPostman - 如何在不同的迭代中运行请求
【发布时间】:2022-01-02 19:53:42
【问题描述】:
我有一个关于运行集合的问题
我有以下内容:
收集:请求 1
请求 2
请求 3
我想要什么:当我运行收集时,我希望请求 1 执行 20 次,然后在迭代 20 之后运行请求 2,并在请求 2 完成后运行请求 3。
所以:请求 1 运行 20 次,请求 2 运行一次,请求 3 运行一次
我尝试了类似(在请求 1 的测试脚本中):
if (pm.info.iteration === pm.info.iterationCount+3) {
postman.setNextRequest("Url of request 1")
}
但它像请求 1、请求 2、请求 3、请求 1、2,3... 等 1:1 运行
你有什么想法吗? #我是 Postman 的新手
【问题讨论】:
标签:
collections
postman
postman-collection-runner
postman-pre-request-script
postman-testcase
【解决方案1】:
我的想法是创建一个变量count_num 来管理循环。
请求 1:
预请求:如果环境中没有count_num,则创建count_num
let count = pm.environment.get("count_num");
if (count === undefined || count === null) {
pm.environment.set("count_num", 19);
}
测试:检查count_num的值,如果count_num = 0,则进入Request 2。
let count = pm.environment.get("count_num");
if (count === 0){
pm.environment.unset("count_num");
postman.setNextRequest("Req2");
} else {
pm.environment.set("count_num", count - 1);
postman.setNextRequest("Req1");
}
注意:"Req1" & "Req2" 是请求名称,您可以更改以适合您的实际请求名称。