首页主机资讯Postman在Ubuntu上如何进行集成测试

Postman在Ubuntu上如何进行集成测试

时间2025-11-26 22:36:04发布访客分类主机资讯浏览821
导读:在 Ubuntu 上,Postman 的集成测试通常通过桌面客户端进行用例设计与本地调试,再借助 Newman 在命令行与 CI/CD 中执行,实现自动化与持续集成。 安装与本地调试 安装方式 使用 Snap:sudo snap ins...

在 Ubuntu 上,Postman 的集成测试通常通过桌面客户端进行用例设计与本地调试,再借助 Newman 在命令行与 CI/CD 中执行,实现自动化与持续集成。

安装与本地调试

  • 安装方式
    • 使用 Snap:sudo snap install postman --classic
    • 使用 APT 仓库
      • 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
      • sudo apt install flatpak
      • flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
      • 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
      • 创建桌面入口 /usr/share/applications/postman.desktop(Exec 指向 /usr/local/bin/postman,Icon 指向对应图标路径)
  • 本地调试
    • 在 Postman 中创建 CollectionRequest,在 Tests 标签用 JavaScript 编写断言,例如:
      • pm.test(“Status code is 200”, () => pm.response.to.have.status(200));
      • pm.test(“Response has id”, () => pm.expect(pm.response.json().id).to.exist);
    • 使用 Runner 批量运行集合,校验响应状态、头、体、耗时等指标。

使用 Newman 进行自动化测试

  • 安装 Newman(Node.js 与 npm 已安装前提下)
    • npm install -g newman
  • 运行测试
    • 基本:newman run your_collection.json
    • 使用环境变量/全局变量:newman run collection.json --environment env.json --globals globals.json
    • 生成报告:newman run collection.json --reporters cli,junit --reporter-junit-export report.xml
  • 常用选项
    • –delay-request:请求间延迟(毫秒)
    • –timeout-request:请求超时(毫秒)
    • –bail:遇到失败立即退出
    • –verbose:输出更详细日志

集成到 CI/CD

  • 示例 GitHub Actions 工作流(Ubuntu runner)
    • 触发时机:push / pull_request 到 main
    • 步骤:检出代码 → 安装 Node.js → 全局安装 Newman → 运行集合并导出 JUnit 报告 → 上传报告产物
    • 参考工作流:
      • name: Run Postman API Tests on: push: branches: [ main ] pull_request: branches: [ main ] jobs: postman-tests: runs-on: ubuntu-latest strategy: matrix: node-version: [18.x] steps: - uses: actions/checkout@v3 - name: Setup Node.js uses: actions/setup-node@v3 with: node-version: ${ { matrix.node-version } } - name: Install Newman run: npm install -g newman - name: Run Postman Collection run: | newman run “your_postman_collection.json”
        –environment “env.json”
        –reporters cli,junit
        –reporter-junit-export report.xml - name: Upload Test Results uses: actions/upload-artifact@v2 with: name: postman-test-results path: report.xml
  • 其他 CI 工具(如 Jenkins
    • 在构建步骤中执行 Newman 命令,并使用 JUnit 插件发布测试报告,结合构建状态门禁实现质量关卡。

最佳实践与常见问题

  • CollectionEnvironment 纳入版本控制(如仓库根目录 /tests/postman/),保持与代码同步;CI 中通过相对路径引用。
  • 管理机密信息:避免在集合或环境 JSON 中明文存放 API Key / Token,在 CI 中使用 Secrets 注入(GitHub Actions 的 secrets、Jenkins 的 Credentials 等),Newman 可通过环境变量读取。
  • 稳定性与可维护性
    • 为接口设置合理的 超时重试(如 --timeout-request、–delay-request),避免偶发性失败。
    • 使用 Collection Runner 的 **数据文件(CSV/JSON)**驱动数据驱动测试,覆盖多组入参与边界场景。
    • 统一 断言命名报告归档,便于回溯与度量(成功率、响应时长分布等)。

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


若转载请注明出处: Postman在Ubuntu上如何进行集成测试
本文地址: https://pptw.com/jishu/757186.html
Ubuntu上Postman如何进行Mock服务测试 debian ulimit如何实现安全策略

游客 回复需填写必要信息