温馨提示×

如何在Linux Postman中使用脚本

小樊
46
2025-11-08 10:20:24
栏目: 智能运维

如何在Linux系统中使用Postman脚本
Postman脚本主要用于接口自动化测试流程编排,分为Pre-request Script(请求前置脚本)(请求发送前执行,用于参数准备)和Tests Script(测试脚本)(请求完成后执行,用于响应验证)两类。以下是在Linux环境下使用Postman脚本的详细步骤:

1. 准备Postman环境

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

  • 下载安装包:访问Postman官方网站(postman.com/downloads),选择Linux版本(如.tar.gz格式)下载。
  • 解压并配置:通过终端进入下载目录,执行tar -xzf Postman-linux-x64-*.tar.gz -C /opt解压;创建符号链接sudo ln -s /opt/Postman/Postman /usr/bin/postman,实现终端直接输入postman启动应用。

2. 编写Pre-request Script(请求前置脚本)

Pre-request Script用于请求发送前的动态准备,常见场景包括生成随机参数、设置环境变量、获取前置接口数据等。

  • 进入脚本编辑界面:在Postman中打开目标请求,点击顶部标签栏的Pre-request Script
  • 常用操作示例
    • 生成随机数并添加为URL参数(用于测试接口的幂等性):
      var randomNum = Math.floor(1000 + Math.random() * 9000); // 生成1000-9999的随机数
      pm.request.url.addQueryParams([{ key: "random", value: randomNum.toString() }]);
      
    • 从环境变量获取认证令牌并设置请求头(用于需要鉴权的接口):
      const authToken = pm.environment.get("authToken"); // 获取环境变量中的令牌
      pm.request.headers.add({ key: "Authorization", value: `Bearer ${authToken}` });
      
    • 获取前置接口返回的token并存入全局变量(用于接口关联):
      // 假设前置接口返回的响应体包含access_token字段
      const response = pm.response.json();
      const token = response.access_token;
      pm.globals.set("globalToken", token); // 存入全局变量,供后续请求使用
      

3. 编写Tests Script(测试脚本)

Tests Script用于请求完成后的响应验证,常见场景包括状态码检查、响应体字段断言、响应时间限制等。

  • 进入脚本编辑界面:在Postman中打开目标请求,点击顶部标签栏的Tests
  • 常用操作示例
    • 断言响应状态码为200(接口成功响应):
      pm.test("Status code is 200", function () {
          pm.response.to.have.status(200); // 使用Chai断言库的to.have.status方法
      });
      
    • 断言响应体中特定字段的值(如验证返回的用户信息):
      pm.test("Check user name in response", function () {
          const jsonData = pm.response.json(); // 解析响应体为JSON对象
          pm.expect(jsonData.user.name).to.eql("John Doe"); // 断言name字段值为John Doe
      });
      
    • 断言响应时间小于300ms(接口性能要求):
      pm.test("Response time is less than 300ms", function () {
          pm.expect(pm.response.responseTime).to.be.below(300); // 断言响应时间小于300ms
      });
      

4. 运行脚本并查看结果

  • 单请求运行:编写完脚本后,点击Postman界面的Send按钮发送请求,在右侧Test Results面板查看脚本执行结果(Pass/Fail)。
  • 批量运行(Collection Runner)
    1. 将多个请求保存为Collection(集合):点击左侧边栏的“+”号,选择“Collection”,输入名称并保存。
    2. 添加请求到集合:选中请求,拖动至集合名称下。
    3. 运行集合:点击顶部菜单栏的Runner,选择目标集合,点击Run,查看批量测试结果。

5. 结合Newman实现命令行自动化

Newman是Postman的命令行工具,可用于Linux服务器上的自动化测试(如CI/CD流水线)。

  • 安装Newman:在终端执行npm install -g newman(需提前安装Node.js和npm)。
  • 导出Collection和环境变量:在Postman中选中集合,点击Export导出为JSON文件(如collection.json);同理导出环境变量为environment.json
  • 运行Newman命令
    newman run /path/to/collection.json -e /path/to/environment.json
    
    • -e:指定环境变量文件(可选,用于替换集合中的变量)。
    • 可添加--reporters cli,json生成命令行报告和JSON报告,或--reporter-html-export report.html生成HTML报告。

注意事项

  • 脚本语法:Postman脚本基于JavaScript,需遵循其语法规则(如变量声明用let/const,避免全局污染)。
  • 变量作用域:优先使用环境变量pm.environment.get/set)或全局变量pm.globals.get/set)管理动态参数,确保脚本的可复用性。
  • 调试技巧:在脚本中使用console.log()输出调试信息,可在Postman的Console面板(点击顶部菜单栏的ViewShow Postman Console)查看。

0