0


Postman 高级用法学习

Postman 高级用法

Postman 是一款强大的 API 调试和开发工具,广泛应用于 API 开发、测试、调试和自动化流程中。除了基本的 API 请求发送和响应查看功能,Postman 还提供了许多高级功能。以下是详细的讲解,包括具体示例和操作步骤。


一、环境管理与变量使用

在 API 开发和测试过程中,切换不同的环境(如开发、测试、生产环境)和使用变量可以大大简化操作。Postman 的环境管理和变量功能非常有用。

1.1 环境管理

操作步骤

  1. 创建环境:- 点击 Postman 界面右上角的环境选择器(通常显示为“No Environment”)。- 点击“Manage Environments”进入环境管理页面。- 点击“Add”按钮创建一个新环境。- 给环境命名,比如“开发环境”,并添加所需的环境变量。
  2. 定义环境变量:- 在环境设置中,为每个环境变量设置键值对。例如,设置 base_urlhttps://dev.example.com/api
  3. 切换环境:- 在环境选择器中选择所需的环境,所有使用 {{variable_name}} 语法的变量都会自动替换为当前环境的值。

示例

假设你有一个 API 基础 URL 在不同环境下不同:

  • 开发环境:https://dev.example.com/api
  • 测试环境:https://test.example.com/api

你可以在请求中使用变量:

GET {{base_url}}/users

切换环境时,

{{base_url}}

会替换为相应的 URL。

1.2 变量使用

Postman 支持多种类型的变量,包括环境变量、全局变量和局部变量。

  • 环境变量:适用于当前选定的环境。
  • 全局变量:适用于所有环境和请求。
  • 局部变量:只在当前请求或脚本中有效。

操作步骤

  1. 定义全局变量:- 点击右上角的“Environment Quick Look”(眼睛图标)。- 点击“Add”按钮添加全局变量。
  2. 使用变量:- 在请求的 URL、Headers 或 Body 中使用 {{variable_name}} 来引用变量。

示例

GET {{base_url}}/users/{{user_id}}

在请求的“Pre-request Script”中,可以动态设置

user_id

变量:

pm.environment.set("user_id",12345);

二、请求链与集合测试

Postman 支持将多个请求组织成集合(Collection),并允许在请求之间传递数据,实现复杂的 API 测试场景。

2.1 请求链

请求链可以让你在一个请求完成后,将其响应数据传递给下一个请求。

操作步骤

  1. 保存响应数据:- 在请求的“Tests”选项卡中使用 pm.environment.setpm.globals.set 来保存响应数据。// 保存响应中的 user_id 到环境变量pm.environment.set("user_id", pm.response.json().id);
  2. 在后续请求中使用保存的变量:- 在下一个请求中,通过 {{user_id}} 使用之前保存的变量。GET {{base_url}}/users/{{user_id}}/details
2.2 集合测试

Postman 集合(Collection)是一个包含多个请求的集合,可以批量运行这些请求,适用于自动化测试和回归测试。

操作步骤

  1. 创建集合:- 在左侧的“Collections”面板中,点击“New Collection”创建一个新集合。
  2. 添加请求到集合:- 将请求拖拽到集合中,或者在创建请求时直接添加到集合。
  3. 运行集合:- 点击集合的“Run”按钮,进入“Collection Runner”界面。- 选择要运行的请求和环境,点击“Run Collection”启动测试。

示例

假设你有一个用户注册和登录的 API,需要依次测试用户注册、获取用户详情和用户登录。

1. POST {{base_url}}/register
   Body: { "username": "testuser", "password": "testpass" }

2. GET {{base_url}}/users/{{user_id}}
   使用注册成功后返回的 user_id

3. POST {{base_url}}/login
   Body: { "username": "testuser", "password": "testpass" }

可以通过集合和变量传递来实现这个测试流程。


三、使用脚本增强测试能力

Postman 提供了强大的脚本功能,可以在请求发送前(Pre-request Script)和收到响应后(Tests)执行 JavaScript 脚本,用于数据预处理和响应验证。

3.1 Pre-request Script

Pre-request Script 是在请求发送前执行的脚本,常用于设置变量、修改请求参数或动态生成数据。

操作步骤

  1. 编写 Pre-request Script: - 在请求的“Pre-request Script”选项卡中编写 JavaScript 脚本。

示例

自动生成一个随机的 API 密钥:

const apiKey = Math.random().toString(36).substring(2,15);
pm.environment.set("api_key", apiKey);
3.2 Tests

Tests 是在请求响应后执行的脚本,常用于验证响应状态码、响应体内容和 Headers。

操作步骤

  1. 编写测试脚本: - 在请求的“Tests”选项卡中编写 JavaScript 脚本。

示例

检查响应状态码是否为 200,响应体是否包含

success

字段:

pm.test("Status code is 200",function(){
    pm.response.to.have.status(200);});

pm.test("Response contains success",function(){
    pm.expect(pm.response.json()).to.have.property("success");});

四、Postman 自动化与 CI/CD 集成

Postman 不仅适用于手动测试,还可以与持续集成/持续交付(CI/CD)系统集成,实现自动化测试和部署。

4.1 通过 Newman 执行集合测试

Newman 是 Postman 的命令行运行器,允许在命令行中运行 Postman 集合测试,非常适合集成到 CI/CD 管道中。

安装 Newman

npminstall-g newman

运行集合

  1. 导出集合和环境文件:- 在 Postman 中,将集合和环境导出为 JSON 文件。
  2. 使用 Newman 运行集合
newman run path/to/collection.json -e path/to/environment.json

示例

运行一个名为

my-collection.json

的集合,并使用

my-environment.json

作为环境配置:

newman run my-collection.json -e my-environment.json
4.2 在 CI/CD 系统中集成

Postman 可以与 Jenkins、GitLab CI、Travis CI 等 CI/CD 工具集成,实现自动化测试。

操作步骤

  1. 配置集合和环境:- 在 Postman 中创建并导出集合和环境文件。
  2. 编写 CI/CD 脚本:- 在 CI/CD 系统中,编写脚本调用 Newman 运行集合测试。

示例

在 Jenkins 中的

Jenkinsfile

中运行 Postman 测试:

pipeline {
    agent any
    stages {stage('Test'){
            steps {
                sh 'newman run path/to/collection.json -e path/to/environment.json'}}}}

五、利用 Postman 插件扩展功能

Postman 支持多种插件和扩展,可以通过 Postman 的插件市场(Postman Plugin Marketplace)来安装和使用。

5.1 Postman 插件

操作步骤

  1. 访问插件市场:- 打开 Postman,点击左侧边栏的插件图标(积木状图标)。
  2. 安装插件:- 在插件市场中浏览和搜索插件,点击“Install”按钮安装所需的插件。

常用插件

  • Postman Interceptor:- 用于捕获和同步浏览器请求到 Postman,方便调试 Web 应用的 API 请求。操作步骤:- 安装 Postman Interceptor 插件,并在 Chrome 浏览器中安装相应的 Postman Interceptor 扩展。- 在 Postman 中启用 Interceptor,并连接到浏览器扩展。- 开启“捕获请求”功能,在浏览器中进行操作,Postman 会自动捕获这些请求。
  • Postman Code Generator:- 将 Postman 请求生成多种编程语言的代码片段,

方便在应用中使用。

操作步骤

  • 打开一个请求,点击右上角的“Code”按钮。
  • 在弹出的窗口中选择需要生成代码的语言和框架,Postman 会生成相应的代码片段。
  • Postman Visualizer:- 将响应数据可视化为图表或表格,方便分析和展示数据。操作步骤:- 在请求的“Tests”选项卡中编写 JavaScript 脚本,使用 pm.visualizer.set 方法定义可视化模板和数据。示例const template =` <table> <tr> <th>ID</th> <th>Name</th> </tr> {{#each response}} <tr> <td>{{this.id}}</td> <td>{{this.name}}</td> </tr> {{/each}} </table>`;pm.visualizer.set(template,{response: pm.response.json()});

六、Postman 的使用技巧

Postman 的高效使用可以显著提升 API 开发和测试的效率。以下是一些常用的使用技巧。

6.1 快捷键

Postman 支持许多快捷键,可以加快操作速度。

常用快捷键

  • Ctrl + T:新建 Tab。
  • Ctrl + S:保存请求。
  • Ctrl + Enter:发送请求。
  • Ctrl + F:搜索请求。
6.2 Mock Server

Postman 的 Mock Server 功能可以模拟 API 响应,适用于前后端分离开发和测试。

操作步骤

  1. 创建 Mock Server:- 在 Postman 中点击左侧的“Mock Servers”面板,点击“Create a Mock Server”按钮。- 选择要模拟的集合和响应,配置 Mock Server 的 URL 和环境。
  2. 使用 Mock Server:- 在请求中使用 Mock Server 的 URL 进行调用,模拟真实的 API 响应。
6.3 监视器

Postman 的监视器可以定期运行集合,监控 API 的性能和可用性。

操作步骤

  1. 创建监视器:- 在 Postman 中点击左侧的“Monitors”面板,点击“Create a Monitor”按钮。- 选择要监视的集合和环境,设置监视器的运行频率和通知方式。
  2. 查看监视器结果:- 监视器会定期运行集合,并生成报告,可以在 Postman 中查看运行结果和性能指标。

七、总结

Postman 是一个功能强大的 API 开发和测试工具,提供了丰富的高级功能,如环境管理、变量使用、请求链、集合测试、脚本、自动化集成和插件扩展等。这些功能可以大大提升 API 开发和测试的效率。通过掌握这些高级用法,开发者可以更高效地进行 API 调试、测试和自动化流程的实现。

标签: postman

本文转载自: https://blog.csdn.net/pumpkin84514/article/details/140164765
版权归原作者 pumpkin84514 所有, 如有侵权,请联系我们删除。

“Postman 高级用法学习”的评论:

还没有评论