温馨提示×

Ubuntu Postman API测试教程

小樊
54
2025-09-22 21:51:35
栏目: 智能运维

Ubuntu Postman API测试教程

一、在Ubuntu上安装Postman

Postman提供三种主流安装方式,可根据需求选择:

1. Snap安装(推荐,最便捷)

Snap是Ubuntu官方支持的软件包管理工具,一键安装且自动更新:
打开终端(Ctrl+Alt+T),依次执行以下命令:

sudo snap install postman --classic

安装完成后,终端输入postman即可启动,或在应用菜单中找到Postman图标。

2. 官网下载手动安装

若需自定义安装路径或版本,可通过官网下载:

  • 访问Postman官网(postman.com/downloads),选择Linux版本(如Postman-linux-x64-XX.X.X.tar.gz);
  • 终端进入下载目录,解压至/opt(系统软件目录):
    cd ~/Downloads
    sudo tar -xzf Postman-linux-x64-XX.X.X.tar.gz -C /opt/
    
  • 创建全局符号链接(方便终端直接调用):
    sudo ln -s /opt/Postman/Postman /usr/bin/postman
    
  • (可选)创建桌面快捷方式:
    新建/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 update-desktop-database更新应用菜单,即可在应用列表中找到Postman。

3. 使用npm安装(适合开发人员)

若已安装Node.js(nodejsnpm),可通过npm全局安装Postman命令行工具:

sudo npm install -g newman

注:newman是Postman的命令行工具,用于自动化测试(后续会介绍)。

二、使用Postman进行API测试

1. 创建请求

  • 启动Postman后,点击左侧**+ New按钮,选择Request**;
  • 输入请求名称(如“Get User List”),选择或创建Collection(用于组织请求,如“User API”);
  • 在顶部选择HTTP方法(如GETPOST),输入API URL(如https://api.example.com/users);
  • 点击Send发送请求,下方Response面板将显示状态码、响应头和响应体。

2. 配置请求参数

  • 查询参数(Query Params):适用于GET请求的URL附加参数(如?page=1&limit=10),在Params选项卡中输入键值对,Postman会自动生成URL;
  • 路径参数(Path Params):适用于URL中的变量(如/users/{{id}}),在Params选项卡中添加变量(如id: 123),请求URL会自动替换为/users/123
  • 请求头(Headers):在Headers选项卡中添加键值对(如Content-Type: application/jsonAuthorization: Bearer xxx),用于身份验证或指定数据格式;
  • 请求体(Body):适用于POSTPUT等请求,选择raw格式(如JSON),输入数据(如{"name": "John", "email": "john@example.com"})。

3. 编写测试断言

在请求的Tests选项卡中,使用JavaScript编写断言脚本,验证响应是否符合预期。常见断言示例:

  • 检查状态码是否为200:
    pm.test("Status code is 200", function () {
        pm.response.to.have.status(200);
    });
    
  • 检查响应体是否包含特定字段:
    pm.test("Response has user ID", function () {
        const jsonData = pm.response.json();
        pm.expect(jsonData).to.have.property("id");
    });
    
  • 检查响应时间是否小于1秒:
    pm.test("Response time is less than 1s", function () {
        pm.expect(pm.response.responseTime).to.be.below(1000);
    });
    

断言结果会在Test Results面板中显示(通过/失败)。

三、自动化测试与持续集成

1. 使用Collection Runner批量运行测试

  • 将多个相关请求保存到Collection中(如“User API”);
  • 点击Collection右侧的Run按钮,进入Runner界面;
  • 选择Collection、迭代次数(如10次)、环境变量(如测试环境URL),点击Run
  • Runner会依次执行Collection中的所有请求,生成测试报告(显示通过/失败的用例数)。

2. 使用Newman命令行工具实现CI/CD

Newman是Postman的命令行工具,可将测试脚本集成到Jenkins、GitHub Actions等CI/CD流程中:

  • 导出Collection和Environment:在Postman中选中Collection/Environment,点击Export,保存为JSON文件(如user_collection.jsontest_env.json);
  • 安装Newman(若未安装):
    sudo npm install -g newman
    
  • 运行测试并生成HTML报告:
    newman run user_collection.json -e test_env.json -r html --reporter-html-export report.html
    
    执行后,终端会显示测试结果,report.html文件可查看详细报告(适合分享给团队)。

四、常见问题解决

  • 无法启动Postman:检查是否安装依赖(如libgtk-3-0libxss1),执行sudo apt install libgtk-3-0 libxss1
  • 请求超时:检查网络连接,或调整Postman的Settings → General → Request timeout(默认30秒);
  • 环境变量不生效:确保在请求中正确引用变量(如{{base_url}}),并在Environments中定义变量。

通过以上步骤,你可以在Ubuntu系统中高效使用Postman进行API测试,覆盖功能验证、自动化测试及持续集成等场景。

0