意见箱
恒创运营部门将仔细参阅您的意见和建议,必要时将通过预留邮箱与您保持联络。感谢您的支持!
意见/建议
提交建议
配置详情
本产品仅限新用户首购专享!每人限购1台,续费5折
当前配置
数据中心: {{ getconfigInfoArea(productDetailInfo) }}
套餐规格: 2 核 2 G
带宽:
系统盘 {{ validateMySplit(ProductVM.getProductappointInfoBykey(productDetailInfo,'云系统盘'),'|',1) }} 性能型
IP 数 1 个
可选配置
操作系统:
VPC:
安全组:
购买时长:
1 月
我已阅读并同意《恒创科技服务协议》
购买前请阅读协议并勾选同意

Linux Postman如何使用Tests脚本

来源:互联网 编辑:云晓生
2025-09-22 16:40:36

Linux环境下Postman Tests脚本使用指南

1. 准备工作:安装Postman并配置环境

在Linux系统上使用Postman前,需先完成安装:

  • 下载安装包:访问Postman官方网站,下载适用于Linux的压缩包(如.tar.gz格式);
  • 解压与安装:通过终端导航至下载目录,执行tar -xvf Postman-linux-x64-*.tar.gz解压;将解压后的Postman文件夹移动至/opt目录(sudo mv Postman /opt);创建全局符号链接(sudo ln -s /opt/Postman/Postman /usr/local/bin/postman),实现终端直接输入postman启动应用。
  • 启动与验证:终端输入postman,若成功弹出图形界面则表示安装完成。

2. 编写Tests脚本的基本步骤

2.1 创建请求与集合

  • 打开Postman,点击左上角“+”按钮→选择“HTTP Request”,填写请求方法(GET/POST等)、URL、Headers(如Content-Type: application/json)和Body(如需发送JSON数据,切换至“Body” tab选择raw→JSON格式输入);
  • 保存请求:点击“Save”按钮,选择或创建一个Collection(如命名为“User APIs”),将请求添加至集合中(集合用于批量管理请求及脚本)。

2.2 添加Tests脚本

  • 选中需添加脚本的请求,点击编辑器顶部的Tests tab(位于“Headers”“Body” tab右侧);
  • 点击“New Script”按钮(若有),直接在代码编辑框中编写JavaScript脚本(Postman支持JavaScript语法,内置ChaiJS断言库)。

3. 常见Tests脚本示例

Tests脚本主要用于验证响应的正确性,以下是常用场景的示例:


Linux Postman如何使用Tests脚本

3.1 状态码验证

pm.test(Status code is 200, function () {
    pm.response.to.have.status(200); // 断言响应状态码为200(成功)
});

3.2 响应时间验证

pm.test(Response time is less than 200ms, function () {
    pm.expect(pm.response.responseTime).to.be.below(200); // 断言响应时间小于200毫秒
});

3.3 JSON响应体验证

pm.test(Response body contains expected data, function () {
    const jsonData = pm.response.json(); // 解析JSON响应体
    pm.expect(jsonData).to.have.property(token); // 断言响应体包含token字段
    pm.expect(jsonData.token).to.be.a(string); // 断言token字段为字符串类型
});

3.4 环境变量设置与使用

// 设置环境变量(如将响应中的token存入环境变量)
pm.test(Set environment variable, function () {
    const jsonData = pm.response.json();
    pm.environment.set(auth_token, jsonData.token); // 将token存入环境变量auth_token
});

// 使用环境变量(如在后续请求的Headers中添加Authorization)
pm.request.headers.add({
    key: Authorization,
    value: `Bearer ${pm.environment.get(auth_token)}` // 获取环境变量auth_token的值
});

3.5 XML响应体转换与验证

pm.test(Parse XML response, function () {
    const xmlData = pm.response.text(); // 获取XML响应体
    const jsonObj = xml2Json(xmlData); // 转换为JSON对象(Postman内置xml2Json函数)
    pm.expect(jsonObj).to.have.property(root.user.name); // 断言XML中存在user.name节点
});

3.6 断言响应头包含特定字段

pm.test(Response header contains Content-Type, function () {
    pm.expect(pm.response.headers).to.have.property(Content-Type); // 断言响应头包含Content-Type
    pm.expect(pm.response.headers.get(Content-Type)).to.include(application/json); // 断言Content-Type包含application/json
});

4. 执行与查看测试结果

  • 发送请求:点击请求编辑器顶部的“Send”按钮,Postman会向目标API发送请求;
  • 查看结果:请求发送后,底部会显示Test Results tab(若未显示,可点击“View”→“Show Test Results”);
  • 结果解读:Test Results tab会列出所有测试用例的执行结果(Passed/Failed),包括测试名称、执行时间、错误信息(若测试失败)。

5. 高级用法

5.1 批量运行测试(Newman命令行工具)

若需批量执行Collection中的所有请求及脚本,可使用Postman的命令行工具Newman:

  • 安装Newman:终端执行npm install -g newman(需提前安装Node.js);
  • 运行Collection:执行newman run /path/to/collection.json -e /path/to/environment.json(collection.json为集合文件路径,environment.json为环境变量文件路径);
  • 输出报告:可添加--reporters cli,html参数生成命令行报告或HTML报告(如newman run collection.json -e environment.json --reporters cli,html)。

5.2 调试脚本

  • 控制台输出:使用console.log()函数输出调试信息(如console.log(Response body:, pm.response.json())),可在Postman底部的“Console” tab查看;
  • 错误排查:若脚本执行失败,Test Results tab会显示错误原因(如语法错误、断言失败),结合控制台输出可快速定位问题。

6. 脚本管理

  • 集合级脚本:在Collection编辑页面(点击Collection名称→“Edit”),切换至“Tests” tab,添加的脚本会在集合中每个请求之后运行;
  • 文件夹级脚本:右键点击Collection中的文件夹→“Edit”,同样可添加“Tests”脚本,该脚本会在文件夹内每个请求之后运行;
  • 请求级脚本:直接在单个请求的“Tests” tab中编写的脚本,仅对该请求生效。
    脚本执行顺序:集合级脚本→文件夹级脚本→请求级脚本(适用于需要复用通用测试逻辑的场景)。
本网站发布或转载的文章均来自网络,其原创性以及文中表达的观点和判断不代表本网站。
上一篇: Linux Postman如何处理JSON数据 下一篇: Linux Postman如何调试API