温馨提示×

centos上postman如何进行自动化测试

小樊
39
2025-11-01 10:47:21
栏目: 智能运维

在CentOS上进行Postman自动化测试的完整步骤

1. 准备基础环境

在CentOS上运行Postman自动化测试前,需先安装Node.js(Newman依赖)和Postman(GUI工具,可选但推荐用于调试)。

  • 安装Node.js和npm
    使用yum包管理器安装最新稳定版Node.js及npm:
    sudo yum install -y nodejs npm
    
    验证安装:
    node -v  # 查看Node.js版本
    npm -v   # 查看npm版本
    
  • 安装Postman
    从官网下载Linux版本安装包,解压并配置软链接以便全局调用:
    wget https://dl.pstmn.io/download/latest/linux64 -O postman.tar.gz
    sudo mkdir -p /usr/local/postman
    sudo tar -xzf postman.tar.gz -C /usr/local/postman --strip-components=1
    sudo ln -s /usr/local/postman/Postman /usr/bin/postman
    
    验证Postman安装:
    postman --version  # 查看Postman版本
    

2. 编写Postman测试集合

Postman通过**集合(Collection)**组织测试用例,每个集合可包含多个请求及对应的测试脚本。

  • 创建集合
    打开Postman,点击左侧“Collections”→“New Collection”,输入集合名称(如API_Automation),点击“Create”。
  • 添加请求并编写测试脚本
    1. 点击集合内的“Add Request”,输入请求名称(如Get User List),选择HTTP方法(如GET),输入API URL(如https://jsonplaceholder.typicode.com/users)。
    2. 切换至“Tests”标签页,编写测试脚本(以下为常用断言示例):
      // 检查响应状态码是否为200
      pm.test("Status code is 200", function () {
          pm.response.to.have.status(200);
      });
      
      // 解析响应体(JSON格式),检查返回的用户数量是否为10
      pm.test("User count is 10", function () {
          const jsonData = pm.response.json();
          pm.expect(jsonData.length).to.eql(10);
      });
      
      // 检查响应时间是否小于1秒
      pm.test("Response time is less than 1000ms", function () {
          pm.expect(pm.response.responseTime).to.be.below(1000);
      });
      
    3. 保存请求至集合。

3. 使用Newman运行自动化测试

Newman是Postman的命令行工具,用于在无GUI环境下运行测试集合。

  • 安装Newman
    通过npm全局安装Newman:
    sudo npm install -g newman
    
    验证Newman安装:
    newman --version  # 查看Newman版本
    
  • 运行测试集合
    将Postman集合导出为JSON文件(点击集合→“…”→“Export”→选择“Collection Format v2.1”→保存),然后使用Newman运行:
    newman run /path/to/API_Automation.json
    
    运行结果将输出至终端,包含每个请求的执行状态、断言结果及响应时间。

4. 高级配置:环境变量与CI/CD集成

  • 环境变量管理
    若API需要动态参数(如base_urltoken),可通过环境变量实现。
    1. 点击Postman右上角“Environment”→“New Environment”,输入环境名称(如Dev),添加变量(如base_url: https://jsonplaceholder.typicode.com)。
    2. 在请求URL中使用变量:{{base_url}}/users
    3. 运行Newman时指定环境文件(导出环境变量为JSON文件):
      newman run /path/to/API_Automation.json -e /path/to/Dev.json
      
  • 集成至CI/CD(以Jenkins为例)
    1. 在Jenkins中创建新任务,添加“Execute Shell”构建步骤。
    2. 输入Newman运行命令(需提前在Jenkins服务器安装Node.js和Newman):
      newman run /path/to/API_Automation.json -e /path/to/Dev.json --reporters cli,json --reporter-json-export /path/to/report.json
      
    3. 可选:添加邮件或Slack通知,将测试报告发送至团队。

5. 常见问题解决

  • 权限问题:若Newman运行时报错,可尝试使用sudo或调整文件权限:
    sudo chown -R $(whoami) /usr/local/lib/node_modules/newman
    
  • 依赖缺失:若缺少libgconf-2-4等库,可通过yum安装:
    sudo yum install -y libgconf-2-4
    

通过以上步骤,即可在CentOS上实现Postman自动化测试,覆盖从本地调试到CI/CD集成的全流程。测试脚本可根据业务需求扩展(如验证响应体字段、处理Token鉴权等),确保API的稳定性与正确性。

0