阅读量:2
1. 安装必要工具
在Linux系统上使用Postman进行自动化测试,需先安装以下工具:
- Node.js与npm:Newman(Postman的命令行工具)依赖Node.js环境。通过以下命令安装:
sudo apt-get update sudo apt-get install nodejs npm - Postman客户端:从Postman官网下载Linux版本(如
.tar.gz格式),解压后将其可执行文件链接到系统PATH:wget https://dl.pstmn.io/download/latest/linux64 -O postman.tar.gz tar -xzf postman.tar.gz -C /opt sudo ln -s /opt/Postman/Postman /usr/local/bin/postman - Newman:通过npm全局安装Newman:
npm install -g newman
2. 创建与配置Postman测试资源
- 创建测试集合:在Postman中创建Collection(如“API_Automation_Tests”),添加测试请求(如GET/POST),并为每个请求编写Tests脚本(用于断言响应)。例如,验证状态码为200的脚本:
pm.test("Status code is 200", function () { pm.response.to.have.status(200); }); - 配置环境变量:通过“Manage Environments”创建环境(如“Dev_Env”),添加变量(如
base_url、api_key),在请求中使用{{variable_name}}引用(如{{base_url}}/api/endpoint),实现多环境切换。
3. 编写自动化运行脚本
使用Node.js编写脚本(如run-tests.js),调用Newman运行Postman集合。示例如下:
const newman = require('newman');
newman.run({
collection: './my-api-tests.json', // 集合文件路径(需导出Postman集合)
environment: './dev-environment.json', // 环境文件路径(可选)
reporters: 'cli', // 输出到终端(可添加'html'生成报告)
reporter: {
html: {
export: './reports/report.html' // HTML报告路径(可选)
}
}
}, function (err, summary) {
if (err) {
console.error('测试失败:', err);
return;
}
console.log('测试完成:', summary.run.stats);
});
4. 运行自动化测试
在终端中执行以下命令,运行测试脚本:
node run-tests.js
测试结果将输出到终端,若生成HTML报告,可通过浏览器查看详细结果(如通过/失败的用例数、响应时间)。
5. 集成到CI/CD系统(可选)
将自动化测试集成到CI/CD流程(如Jenkins、GitLab CI),实现代码提交后自动运行测试。以Jenkins为例,配置步骤如下:
- 在Jenkinsfile中添加Newman运行命令:
pipeline { agent any stages { stage('Run Postman Tests') { steps { sh 'npm install -g newman' // 安装Newman(若未安装) sh 'newman run ./my-api-tests.json -e ./dev-environment.json --reporters cli,html' } } } } - 将Postman集合(
my-api-tests.json)和环境文件(dev-environment.json)添加到版本控制(如Git),确保CI/CD服务器可访问。
6. 高级技巧(提升测试效率)
- 数据驱动测试:使用CSV/JSON文件作为数据源,在Postman的“Collection Runner”中上传,实现多组数据测试。例如,测试不同用户的登录接口,数据文件
testdata.csv包含username,password列,请求中通过{{username}}、{{password}}引用。 - 环境变量传递:在Pre-request Script或Tests中设置环境变量,实现数据共享。例如,从响应中提取token并存入环境变量:
const jsonData = pm.response.json(); pm.environment.set("auth_token", jsonData.token); // 后续请求可使用{{auth_token}} - Pre-request Scripts:在请求发送前执行脚本,如生成签名、设置请求头。例如,添加Authorization头:
const token = pm.environment.get("auth_token"); pm.request.headers.add({ key: "Authorization", value: "Bearer " + token });
以上就是关于“如何使用Linux Postman进行自动化测试”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm