在 CentOS 上进行 Postman API 测试
一 安装与启动
- 下载并解压
- 下载最新 Linux 64 位包:wget https://dl.pstmn.io/download/latest/linux64 -O postman.tar.gz
- 解压到系统目录:sudo mkdir -p /usr/local/postman && sudo tar -zxf postman.tar.gz --strip-components=1 -C /usr/local/postman/
- 创建命令链接
- 便于全局调用:sudo ln -s /usr/local/postman/Postman/Postman /usr/bin/postman
- 图形界面启动器(可选)
- 创建文件:sudo vim /usr/share/applications/postman.desktop,内容示例:
- [Desktop Entry]
- Encoding=UTF-8
- Name=Postman
- Exec=/usr/bin/postman
- Icon=/usr/local/postman/app/resources/app/assets/icon.png
- Terminal=false
- Type=Application
- Categories=Development;StartupNotify=true
- 赋权:sudo chmod +x /usr/share/applications/postman.desktop
- 启动方式
- 终端输入:postman;或在应用菜单搜索并打开 Postman。
二 手动创建请求与环境
- 新建请求
- 在 Postman 左上角点击 New → HTTP Request,选择方法(如 GET/POST),在 URL 输入接口地址,点击 Send 发送请求。
- 请求头与请求体
- Headers:添加如 Content-Type: application/json、认证头(如 Authorization: Bearer )。
- Body:选择 raw → JSON,输入请求体:
- { “name”: “John Doe”, “email”: “john.doe@example.com” }
- 环境与变量
- 管理环境:View → Manage Environments → Add,添加键值对(如 baseUrl=https://api.example.com、apiKey)。
- 使用变量:在 URL 或 Header 中引用,如 {{baseUrl}}/users、{{apiKey}};通过环境下拉切换不同环境。
三 编写测试脚本与常用断言
- Pre-request Script(请求前)
- 动态设置变量:pm.environment.set(“timestampHeader”, new Date().toISOString());
- Tests(请求后)
- 状态码断言:
- pm.test(“Status code is 200”, () => pm.response.to.have.status(200));
- 响应体断言:
- pm.test(“Body contains expected string”, () => pm.expect(pm.response.text()).to.include(“成功”));
- 解析 JSON 并校验字段:
- const jsonData = pm.response.json();
- pm.test(“Name is JohnDoe”, () => pm.expect(jsonData.name).to.eql(“JohnDoe”));
- 运行与查看
- 点击 Send 后,测试结果会显示在 Test Results 面板。
四 自动化测试与 CI 集成
- 安装 Newman
- 先安装 Node.js 与 npm:sudo yum install -y nodejs npm
- 全局安装 Newman:sudo npm install -g newman
- 运行集合
- 导出集合与环境为 collection.json、environment.json,执行:
- newman run collection.json -e environment.json
- 生成报告(可选)
- 生成 HTML 报告:newman run collection.json -e environment.json -r html,cli --reporter-html-export report.html
- CI/CD 集成
- 在 Jenkins/GitLab CI 等流水线中添加 Newman 执行步骤,实现提交或部署时自动运行 API 测试。
五 常见问题与排障
- 启动报错缺依赖(如 libXScrnSaver)
- CentOS 7 及更早版本可安装:sudo yum install libXScrnSaver
- 命令行找不到 postman
- 检查软链接:ls -l /usr/bin/postman;必要时重新创建:sudo ln -sfn /usr/local/postman/Postman/Postman /usr/bin/postman
- 图形界面无法启动或图标缺失
- 确认 .desktop 文件 Exec/Icon 路径正确,且已赋权:sudo chmod +x /usr/share/applications/postman.desktop
- 无法发送请求或证书问题
- 校验 baseUrl、网络连通性与代理设置;必要时在请求中关闭 SSL 校验(仅测试环境):在请求 Settings → SSL certificate verification 选择 Disable。