如何在Debian上部署Postman自动化测试
导读:在 Debian 上部署 Postman 自动化测试 一 安装与准备 更新系统并安装依赖 sudo apt update && sudo apt upgrade -y sudo apt install -y curl w...
在 Debian 上部署 Postman 自动化测试
一 安装与准备
- 更新系统并安装依赖
- sudo apt update & & sudo apt upgrade -y
- sudo apt install -y curl wget unzip nodejs npm
- 安装 Postman(任选其一)
- Snap:sudo snap install postman --classic
- APT 仓库:
- wget -qO - https://dl.postman.co/postman.gpg | sudo gpg --dearmor | sudo tee /usr/share/keyrings/postman.gpg > /dev/null
- echo “deb [signed-by=/usr/share/keyrings/postman.gpg] https://dl.postman.co/debian $(lsb_release -cs) main” | sudo tee /etc/apt/sources.list.d/postman.list > /dev/null
- sudo apt update & & sudo apt install -y postman
- Flatpak:
- sudo apt install -y flatpak
- flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
- flatpak install -y flathub com.postman.Postman
- 验证安装
- postman --version 或 flatpak run com.postman.Postman
- 安装 Newman(命令行运行 Postman 集合)
- sudo npm install -g newman newman-reporter-html newman-reporter-cli
二 编写与本地运行测试
- 在 Postman 中创建 Collection,添加请求并在 Tests 标签编写断言(JavaScript)
- 示例:
- pm.test(“Status code is 200”, () => pm.response.to.have.status(200));
- pm.test(“Response has userId”, () => pm.expect(pm.response.json()).to.have.property(“userId”));
- 示例:
- 使用环境变量管理不同环境(如 dev/test/prod)
- 在环境/全局中定义变量(如 baseUrl、token),在请求中以 { { baseUrl} } 、{ { token} } 引用
- 本地运行集合
- 在 Postman 顶部 Runner 选择集合与环境,配置迭代次数后运行,查看断言结果
- 常用断言范式
- 状态码:pm.response.to.have.status(200)
- 响应体字段:pm.expect(jsonData.key).to.eql(“expected”)
- 响应时间:pm.expect(pm.response.responseTime).to.be.below(500)
三 无头运行与 CI 集成
- 导出集合与环境
- Collection:Export → Collection v2.1(JSON)
- Environment:Export → Environment(JSON)
- 命令行运行 Newman
- 基本:newman run collection.json -e environment.json
- 报告与静默:newman run collection.json -e environment.json -r cli,html --reporter-html-export report.html --silent
- 迭代与数据驱动:newman run collection.json -e environment.json -n 5 --iteration-data data.csv
- 在 CI/CD 中使用(示例)
- 示例脚本:
- npm i -D newman newman-reporter-html
- newman run collection.json -e environment.json -r cli,html --reporter-html-export report.html
- 失败即阻断:在 CI 中将 Newman 退出码作为任务状态(非 0 则失败)
- 示例脚本:
- 无头运行说明
- Newman 基于 Node.js,可在服务器/容器/CI 中无界面执行,适合定时任务与流水线
四 目录结构与最佳实践
- 推荐仓库结构
- tests/
- collections/ # 导出的 Postman 集合 JSON
- environments/ # 导出的环境 JSON
- data/ # 数据驱动 CSV/JSON
- reports/ # Newman HTML 报告
- scripts/
- run-tests.sh # 封装 newman 命令
- .gitignore
- reports/
- tests/
- 脚本与变量规范
- 使用 pm.test() 组织每个断言,名称清晰;变量采用统一命名(如驼峰);为关键步骤添加注释
- 预请求脚本(Pre-request Script)用于生成时间戳、签名、Token;Tests 用于校验状态码、结构、业务规则
- 稳定性建议
- 合理使用环境变量与数据文件,避免将机密信息硬编码;对依赖外部服务的用例增加重试与超时控制
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何在Debian上部署Postman自动化测试
本文地址: https://pptw.com/jishu/753203.html
