在 CentOS 上搭建 Postman 自动化测试环境
一 环境准备与安装
- 安装依赖与下载
- 安装 Node.js 与 npm(Newman 依赖):sudo yum install -y nodejs npm
- 下载 Postman Linux 版本:wget https://dl.pstmn.io/download/latest/linux64 -O postman.tar.gz
- 解压与软链
- 解压到 /opt:sudo tar -xzf postman.tar.gz -C /opt
- 创建软链便于全局执行:sudo ln -s /opt/Postman/Postman /usr/bin/postman
- 启动与桌面入口(可选)
保存后赋予可执行权限:sudo chmod +x /usr/share/applications/postman.desktop。
二 编写测试脚本与数据驱动
- 基本概念
- 在 Postman 的 Pre-request Script 中设置变量、签名、时间戳等;在 Tests 中编写 JavaScript 断言验证响应;通过 环境变量/全局变量 复用配置;使用 集合 Runner 批量运行请求。
- 常用断言示例
// 状态码
pm.test("Status code is 200", () => pm.response.to.have.status(200));
// 响应时间
pm.test("Response time < 500ms", () => pm.expect(pm.response.responseTime).to.be.below(500));
// 响应头
pm.test("Content-Type is application/json", () =>
pm.response.to.have.header("Content-Type", "application/json; charset=utf-8")
);
// 响应体字段
pm.test("Response has userId", () => {
const json = pm.response.json();
pm.expect(json).to.have.property("userId");
});
// 保存变量供后续请求使用
pm.environment.set("authToken", pm.response.json().token);
- 数据驱动(CSV/JSON)
三 使用 Newman 在服务器上运行自动化测试
- 安装 Newman
- 全局安装:npm install -g newman
- 基本运行
- 运行集合与环境:newman run collection.json --environment env.json
- 生成报告
- HTML 报告(需 newman-reporter-html):newman run collection.json -r cli,html --reporter-html-export report.html
- JUnit 报告(便于 CI):newman run collection.json -r cli,junit --reporter-junit-export report.xml
- 无头运行与持续集成
- 在 CentOS 服务器/CI 中直接执行 Newman 命令即可完成无界面批量测试;常见做法是将集合与环境导出为 JSON,在 Jenkins/GitHub Actions 中执行 Newman 并归档报告。
四 常见问题与实用建议
- 找不到图标或启动器
- 检查 Icon= 路径是否与实际安装路径一致;必要时使用 find /opt/Postman -name icon.png 定位图标后再写入 .desktop 文件。
- 命令行找不到 postman
- 确认软链路径正确:ls -l /usr/bin/postman;若不在 PATH,可临时添加:export PATH=$PATH:/opt/Postman。
- 集合/环境文件管理
- 建议将 collection.json 与 env.json 纳入版本控制;在 CI 中用脚本下载或检出对应版本后执行 Newman。
- 服务器无图形界面
- 仅使用 Newman 执行测试,无需启动 Postman GUI;如需在服务器上偶尔使用 GUI,可通过 X11 转发 或 VNC 方式运行 Postman。