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

如何在Postman中测试API分页功能?

Postman API分页测试指南

一、先排查单页请求失败的原因

你设置current_page=2没拿到第二页数据,先确认这几点:

  • 核对API分页参数名:部分API用page而非current_page,或page_number,可尝试修改参数名测试,也可查看API文档确认
  • 确认参数位置:GET请求需把分页参数放在URL查询参数中;POST请求可能要放在Body的form-data或raw JSON里
  • 检查参数格式:确保current_page是数字类型,而非字符串

举个例子,如果API正确参数是page,请求URL应为{{base_url}}/patient-stats?page=2

二、Postman实现自动循环分页测试

单页请求正常后,可通过Tests脚本+集合运行器自动遍历所有分页:

步骤1:在请求的Tests标签中添加脚本

这个脚本会自动获取返回的total_pages,设置环境变量,并判断是否继续下一页请求:

// 解析响应JSON
const response = pm.response.json();

// 验证响应包含分页元数据
pm.test("响应包含meta分页信息", function () {
    pm.expect(response.meta).to.have.property("total_pages");
    pm.expect(response.meta).to.have.property("current_page");
});

// 获取当前页和总页数
const currentPage = response.meta.current_page;
const totalPages = response.meta.total_pages;

// 设置环境变量
pm.environment.set("current_page", currentPage);
pm.environment.set("total_pages", totalPages);

// 判断是否存在下一页,存在则设置下一页参数并继续请求
if (currentPage < totalPages) {
    const nextPage = currentPage + 1;
    pm.variables.set("next_page", nextPage);
    postman.setNextRequest(pm.info.requestName);
} else {
    // 所有页请求完成,终止循环
    postman.setNextRequest(null);
}

步骤2:配置请求参数

在请求的Params标签中添加分页参数:

  • Key: current_page(根据实际API参数名修改)
  • Value: {{current_page}}(引用环境变量)

步骤3:初始化环境变量

在Postman环境变量中手动设置初始值:

  • current_page: 1
  • total_pages: 0(会被脚本自动更新)

步骤4:用集合运行器执行循环

  1. 将该请求加入一个集合
  2. 点击集合右侧的「Run」按钮打开集合运行器
  3. 选择对应环境,设置迭代次数(可设为总页数545,脚本会自动提前终止)
  4. 点击「Run [集合名]」,Postman会自动遍历所有分页

三、额外提示

  • 若API有请求频率限制,可在集合运行器中设置延迟(如1000ms),避免被限流
  • 可在Tests脚本中添加更多断言,比如验证每一页的patient_stats数组格式符合要求(按需调整)
  • 若API用limit和offset分页,可修改脚本逻辑:用offset += limit计算下一页偏移量

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 18:16:06