首页主机资讯CentOS下Postman如何进行数据驱动测试

CentOS下Postman如何进行数据驱动测试

时间2025-12-11 20:41:04发布访客分类主机资讯浏览930
导读:CentOS下Postman数据驱动测试实操指南 一 环境准备 安装 Postman(Linux 版) 从官网下载 Postman-linux-x64-*.tar.gz,解压到 /opt:sudo tar -xzf Postman-li...

CentOS下Postman数据驱动测试实操指南

一 环境准备

  • 安装 Postman(Linux 版)
    • 从官网下载 Postman-linux-x64-*.tar.gz,解压到 /optsudo tar -xzf Postman-linux-x64-*.tar.gz -C /opt
    • 创建软链便于启动:sudo ln -s /opt/Postman/Postman /usr/bin/postman
    • 可选:将 /opt/Postman 加入 PATH,便于命令行启动
  • 安装 Newman(命令行批量运行)
    • 确保已安装 Node.jsnpm,执行:npm install -g newman
  • 准备数据文件
    • 支持 CSV/JSON;CSV 首行为列名,Postman 会将其作为变量名;建议 CSV 保存为 UTF-8 避免中文乱码;CSV 文件末尾不要留空行

二 在Postman中创建数据驱动用例

  • 创建集合与请求
    • 新建 Collection,添加请求并在请求参数(URL、Header、Body)中使用变量占位符 { { 变量名} }
  • 准备数据文件
    • CSV 示例(UTF-8 无 BOM,列名与占位符一致)
      username,password
      user1,pass1
      user2,pass2
      
    • JSON 示例
      [
        {
      "username":"user1","password":"pass1"}
      ,
        {
      "username":"user2","password":"pass2"}
          
      ]
      
  • 编写测试脚本(Tests)
    • 基础断言
      pm.test("Status code is 200", () =>
           pm.response.to.have.status(200));
          
      
    • 使用数据文件字段进行校验(如校验返回用户名与数据一致)
      const jsonData = pm.response.json();
          
      pm.test("Username matches data", () =>
           pm.expect(jsonData.username).to.eql(data.username));
      
      
  • 参数化方式
    • 请求参数中直接引用 { { username} } / { { password} }
    • 在脚本中也可通过 data.username / data.password 读取当前行数据

三 使用Collection Runner执行

  • 打开集合运行器:在集合右侧选择 Run
  • 配置运行参数
    • 选择目标 CollectionEnvironment
    • Data 选择准备好的 CSV/JSON 数据文件;Iterations 会自动设为数据行数(CSV 首行为列名会被自动忽略)
    • 设置 Delay(每次迭代间隔,单位毫秒)
  • 运行与查看结果
    • 点击 Start Run,在 Runner 界面查看每次迭代的请求、响应、断言结果与错误信息

四 命令行批量运行与CI集成(Newman)

  • 导出集合与环境
    • 在 Postman 中将集合导出为 collection.json,环境导出为 env.json
  • 运行命令
    • 基本:newman run collection.json -e env.json -d data.csv
    • 常用选项
      • -n 指定迭代次数(覆盖数据文件行数)
      • -r cli,json,html 生成多种报告
      • --delay-request 设置迭代间隔(毫秒)
  • 示例脚本(可选)
    const newman = require('newman');
    
    newman.run({
    
      collection: 'collection.json',
      environment: 'env.json',
      iterationData: 'data.csv',
      reporters: ['cli','json','html']
    }
        , (err, summary) =>
     {
    
      if (err) {
         console.error(err);
         return;
     }
        
      console.log('Collection run complete.');
    
    }
        );
    
    
  • CI/CD 集成
    • Jenkins/GitLab CI 等流水线中安装 Node.js 与 Newman,执行上述命令;根据 summary.run.failures.total 等统计结果设置构建状态

五 常见问题与最佳实践

  • 编码与格式
    • CSV 建议保存为 UTF-8;文件末尾不要留空行;Postman 会把 CSV 中非数值自动加引号,字符串无需手动加引号
  • 数据文件选择
    • CSV:数据量大更轻量;但不支持 bool、复杂结构
    • JSON:支持 boolnull、嵌套对象/数组,适合复杂数据场景
  • 变量作用域
    • 请求参数用 { { 变量名} } 引用数据文件列名
    • 脚本中用 data.列名 读取当前行数据;如需在多个请求间共享,可在 Pre-request Script 中写入集合/环境变量
  • 运行配置
    • 使用 Collection RunnerNewman 时,优先让数据文件决定 Iterations,避免与手动设置不一致
  • 报告与排查
    • 命令行建议开启 -r cli,json,html 多格式报告,便于本地与 CI 留存与定位失败用例

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: CentOS下Postman如何进行数据驱动测试
本文地址: https://pptw.com/jishu/769758.html
CentOS如何更新VirtualBox虚拟机中的软件 CentOS下如何解决VirtualBox虚拟机蓝屏问题

游客 回复需填写必要信息