温馨提示×

Ubuntu上如何使用Postman进行自动化测试

小樊
73
2025-11-16 14:21:07
栏目: 智能运维

在 Ubuntu 上使用 Postman 进行自动化测试

一 安装与启动

  • 使用 Snap(推荐):
    • 安装:sudo snap install postman --classic
    • 启动:postman
  • 使用 APT 仓库
    • 导入 GPG:wget -qO - https://dl.postman.co/postman.gpg | sudo apt-key add -
    • 添加源:echo "deb https://dl.postman.co/debian $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/postman.list
    • 安装:sudo apt update && sudo apt install postman
  • 使用 Flatpak
    • 安装 Flatpak:sudo apt update && sudo apt install flatpak
    • 添加 Flathub:flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
    • 安装 Postman:flatpak install flathub com.postman.Postman
  • 手动安装(下载解压方式):
    • 下载:wget https://dl.pstmn.io/download/latest/linux64 -O postman.tar.gz
    • 解压:sudo tar -xzf postman.tar.gz -C /opt/
    • 创建软链:sudo ln -s /opt/Postman/Postman /usr/local/bin/postman
    • 创建桌面启动器:sudo nano /usr/share/applications/postman.desktop,内容示例:
      [Desktop Entry]
      Encoding=UTF-8
      Name=Postman
      Exec=/opt/Postman/Postman
      Icon=/opt/Postman/app/resources/app/assets/icon.png
      Terminal=false
      Type=Application
      Categories=Development;
      
    • 赋权:sudo chmod +x /usr/share/applications/postman.desktop 以上方式任选其一即可完成安装与启动。

二 编写自动化测试脚本

  • 创建请求与集合:新建 Collection,在集合中组织多个 Request(如 GET/POST),便于批量执行与场景化管理。
  • Pre-request Script(请求前脚本):常用于生成 token、设置 Header、构造查询参数等。
    // Pre-request Script
    console.log("Pre-request running");
    const token = pm.environment.get("token");
    pm.request.headers.add({ key: "Authorization", value: "Bearer " + token });
    
  • Tests(请求后脚本):用于断言响应状态、响应体、响应时间等。
    // Tests
    pm.test("Status code is 200", () => pm.response.to.have.status(200));
    pm.test("Response time < 200ms", () => pm.expect(pm.response.responseTime).to.be.below(200));
    pm.test("Response has id", () => {
      const json = pm.response.json();
      pm.expect(json.id).to.be.a("number");
    });
    
  • 环境变量与数据驱动:在 Manage Environments 中配置 dev/test/prod 的变量(如 baseUrl、token),在脚本中用 pm.environment.get/set 读取与写入;结合数据文件可实现参数化测试。

三 在桌面客户端运行自动化测试

  • 打开 Runner(集合运行器),选择目标 CollectionEnvironment,配置 迭代次数延迟数据文件 等,点击 Start Run 执行并查看报告。
  • 使用 Console(控制台)输出 console.log 信息,结合脚本错误提示进行调试,快速定位问题。

四 在 CI/CD 中使用 Newman 运行测试

  • 安装 Newman(Postman 命令行工具):npm install -g newman
  • 运行测试(本地或 CI 环境):
    # 基本运行
    newman run your_collection.json
    
    # 使用环境变量
    newman run your_collection.json --environment your_env.json
    
    # 生成报告(CLI + JUnit)
    newman run your_collection.json --reporters cli,junit --reporter-junit-export report.xml
    
  • 与 GitHub Actions 集成示例:
    name: Run Postman API Tests
    on:
      push:
        branches: [ main ]
      pull_request:
        branches: [ main ]
    jobs:
      postman-tests:
        runs-on: ubuntu-latest
        steps:
          - uses: actions/checkout@v4
          - uses: actions/setup-node@v4
            with:
              node-version: 18
          - run: npm install -g newman
          - run: newman run "your_postman_collection.json" --reporters cli,junit --reporter-junit-export report.xml
    
  • 小贴士:在 CI 中建议使用 环境变量文件Secrets 管理敏感信息,避免将 token/密码 硬编码到集合或脚本中。

0