Postman 脚本控制特定请求的执行流程(跳过执行)
使用setNextRequest跳过请求
在Postman的Tests或Pre-request Script中,可以使用postman.setNextRequest()函数来指定下一个要执行的请求。通过合理设置该函数,可以实现跳过特定请求的目的。
实现方法:
- 在需要控制流程的请求的Tests脚本中,编写条件判断逻辑
- 当满足跳过条件时,使用
postman.setNextRequest()直接跳转到后续请求 - 通过设置
postman.setNextRequest(null)来停止工作流程
脚本示例
以下是一个实际应用场景的脚本示例,演示如何跳过特定请求:
// 在需要判断是否跳过的请求的Tests脚本中
// 设置跳过条件,例如基于环境变量或响应数据
if (pm.environment.get("skip_request") === "true") {// 直接跳转到下一个需要执行的请求postman.setNextRequest("目标请求名称");
}
实战:
场景:测试请求集中,期望请求“用户登录、获取商机列表、添加商机、删除商机”仅执行一次,而请求“批量添加产品”采用“数据驱动”会执行多次。

上述测试请求集中,如果不进行控制,运行该测试集,则会使所有请求均反复执行数据驱动文件记录行次数。为了保证请求“用户登录、获取商机列表、添加商机、删除商机”仅执行一次,我们通过编写脚本postman.setNextRequest()进行控制。
如上图,因为postman.setNextRequest()对编写脚本的当前请求不起作用,所以我们创建了一个普通的请求,其作用仅是通过该普通请求的脚本跳转至“目标请求”。
get:skip_request_1:

post:批量添加产品

