You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Postman测试运行器中使用多组数据执行多个API请求

实现方案

完全可以实现,核心通过Postman集合运行器+数据文件+前置脚本完成,具体操作步骤如下:

  • 第一步:处理测试数据
    把你的Excel文件按参数列整理好,第一行填参数名,前三行分别填API a、b、c对应的测试数据,之后将文件另存为UTF-8编码的CSV格式,Postman不直接支持Excel文件读取,需要转成CSV或JSON格式导入。如果有嵌套结构的复杂参数,也可以手动整理为JSON数组格式,每个数组元素对应一行测试数据,导入方式和CSV一致。
  • 第二步:配置接口集合
    新建一个Postman集合,按执行顺序依次添加API a、API b、API c三个接口,把接口中需要动态取值的参数替换为双大括号包裹的变量,变量名和CSV/JSON里的参数名完全对应,比如数据里有user_name字段,参数值就写{{user_name}}。
  • 第三步:添加索引控制脚本
    1. 点击集合名称,切换到「Pre-request Script」标签,添加如下代码,用于初始化行索引:
    // 首次运行初始化索引,默认从第0行开始读取
    if (pm.globals.get("current_row_index") === undefined) {
      pm.globals.set("current_row_index", 0);
    }
    
    1. 依次打开每个API的「Pre-request Script」标签,添加如下代码,用于读取当前行数据并更新索引:
    // 读取当前行的所有测试数据
    const allTestData = pm.iterationData.values();
    const currentRowData = allTestData[pm.globals.get("current_row_index")];
    // 将当前行参数写入环境变量,供当前接口调用
    Object.keys(currentRowData).forEach(paramKey => {
      pm.environment.set(paramKey, currentRowData[paramKey]);
    });
    // 索引+1,下一个接口读取下一行
    pm.globals.set("current_row_index", pm.globals.get("current_row_index") + 1);
    
    1. 打开最后一个接口(也就是API c)的「Tests」标签,添加如下代码,运行结束后清空索引变量,避免影响后续测试:
    pm.globals.unset("current_row_index");
    
  • 第四步:运行集合
    点击集合右侧的运行按钮,打开集合运行器,上传你之前保存的CSV/JSON文件,迭代次数设置为1,点击运行即可。

示例验证

假设你的CSV文件内容如下:

user_id,req_content
1,测试接口a的请求内容
2,测试接口b的请求内容
3,测试接口c的请求内容

三个接口的请求体都设置为{"content":"{{req_content}}","uid":{{user_id}}},运行后接口a会自动带入第一行的user_id=1,接口b带入第二行的user_id=2,接口c带入第三行的user_id=3,和需求完全匹配。

内容的提问来源于stack exchange,提问作者prem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 09:15:04