提升 Postman 使用体验 - 第一部分

2025-05-25

提升 Postman 使用体验 - 第一部分

您是否曾经使用过 Postman,并且在需要验证任何请求时想过:“天哪,这太无聊了”,或者“这太乱了,我需要的 API 请求在哪里?”,所以,亲爱的学徒,不要惊慌,本文将帮助您提升使用此工具的体验并避免浪费您的时间。

什么是邮递员

Postman是一款流行的 API(应用程序编程接口)开发和测试工具。它提供了一个用户友好的界面,用于向 API 发出 HTTP 请求并检查响应。Postman 广泛应用于软件开发的各个阶段,以简化软件项目开发和测试阶段 API 的使用流程。

主要特点:

  • API请求构建
  • 收藏与环境
  • 自动化和测试
  • 监控和模拟
  • 合作
  • 文档
  • 一体化

Postman 适用于 Windows、macOS 和 Linux。此外,它还提供网页版、功能有限的免费版以及面向团队和企业的高级功能付费版。凭借其用户友好的界面和丰富的功能,Postman 已成为 API 开发和测试工作流程中的标准工具。

使用 Collections 作为你的盟友

首先,我们需要了解什么是集合。如果你查看 Postman 文档,他们会说集合是:

Postman Collections 是 API 组织的黄金标准。通过 Collections,您可以将相关的 API 元素链接在一起,以便于编辑、共享、测试和重用。

因此,集合基本上是一个文件夹,您可以对请求进行分组以保持工作区井然有序。

创建集合后,您将看到以下页面:

收藏页面

在本教程中,我们将使用免费的 Books API。此 API 允许您创建、编辑、搜索和删除图书,您可以在此处了解更多信息

概述

概览页面包含集合的请求,显示如下详细信息:

  • 授权类型
  • 正文请求
  • 基本 URL

这是记录 API 的简便方法。点击“查看完整文档”后,将以文档形式列出请求详情:

文档

授权

当您选择一种类型时,您可以对集合内的所有请求使用相同的授权,例如:

授权标签页

如果您转到您的请求,在授权选项卡上,您可以选择“从父​​级继承”选项,这样,您的所有请求都将使用相同的身份验证:

授权标签请求

这是一个很好的做法,可以帮助您减少创建新请求的时间。

变量

在此选项卡中,我们可以开始实现变量。有了它们,可以在不同的请求中重复使用,如果需要更改,只需在集合中的变量中进行更改即可。

例如,让我们创建两个变量:

  • baseUrl - 用于我们请求的基本 URL
  • token - 我们将用它来存储将在集合中使用的令牌

集合变量

要在请求中使用这些变量,请将它们写在双花括号之间:

curl --location '{{baseUrl}}'
Enter fullscreen mode Exit fullscreen mode

设置变量

预请求脚本

在此选项卡中,您可以编写一个脚本,该脚本将在集合内每次请求之前执行。您可以使用此部分设置变量、发出请求以及清除缓存。

在Postman中,单个请求的脚本执行顺序如下:

脚本顺序

这里有一个例子,说明如何清除变量,并使用预请求脚本执行请求:

pm.environment.unset("token"); // clear the variable

const url = pm.variables.get("baseUrl"); // get the baseUrl variable



// Doing a request at Pre-request Script

pm.sendRequest(url, function (err, response) {

    console.log(response.json());
});
Enter fullscreen mode Exit fullscreen mode

预请求示例

您可以使用 Postman 团队制作的 Javascript 代码片段来帮助您构建自己的预请求脚本。预请求脚本使用 JavaScript 语言编写。

测试

如果您想对所有请求进行相同的验证,可以使用“测试”选项卡。对于不同的验证,您可以为每个请求创建特定的测试。作为预请求,Postman 内部的测试是使用 JavaScript 语言编写的。

作为一个简单的例子,让我们进行一个验证,其中所有请求都应该具有 HTTP 状态 200:

测试集合

现在,对于返回书籍列表的端点,让我们验证响应主体是否包含预期的字段:

pm.test("Body matches string", function () {
    pm.expect(pm.response.text()).to.include("id");
    pm.expect(pm.response.text()).to.include("title");
    pm.expect(pm.response.text()).to.include("description");
    pm.expect(pm.response.text()).to.include("pageCount");
    pm.expect(pm.response.text()).to.include("excerpt");
    pm.expect(pm.response.text()).to.include("publishDate");
});
Enter fullscreen mode Exit fullscreen mode

测试请求

当您在集合中运行请求时,在“测试结果”选项卡上,您可以看到为所有集合创建的测试以及为此特定请求创建的测试。

测试结果

你的需求将决定在哪里编写测试。它可以针对单个请求,也可以针对所有请求。

运行集合

现在我们知道了如何使用集合,那么如何更轻松地使用它们呢?很简单,您可以使用“运行集合”选项运行所有请求。

运行集合

单击此按钮时,您可以更改运行收藏的方式,例如:

  • 请求的顺序
  • 迭代次数 - 1 次或多次
  • 他们之间的延迟
  • 计划运行
  • 并在管道中运行此集合

为简洁起见,在本教程中,我们将了解如何手动运行集合:

运行集合1

图像结果

运行结果汇编在一页有关测试、响应时间和响应大小(以千字节为单位)的信息中

环境变量与集合变量

除了集合变量之外,Postman 还允许您创建不同的环境,但最大的问题是:我应该何时使用它们?哪一个更适合我的需求?

首先,我们需要了解环境是一组可在 Postman 请求中使用的变量。如果您是团队的一员,可以使用环境将相关的值组合在一起,并管理对共享 Postman 数据的访问权限。

因此,如果您的变量仅限于某个环境,请使用环境变量;但如果它们仅与某个集合相关,则只能使用集合变量。请始终考虑哪种方法最适合您,并考虑它们如何在您的开发过程中为您提供帮助。

结论

本文将介绍如何使用 Postman 的 API 测试工具来节省测试时间,您可以点击此处访问示例中使用的工具下周,我们将学习如何通过 CLI 运行这些 API,并学习一些新的技巧来帮助您更好地使用这个强大的工具。

希望这些内容对你有用。

如果您有任何疑问,请随时与我联系! 

Bisous,à la semaine prochaine 💅🏼

文章来源:https://dev.to/m4rri4nne/deep-dive-into-api-testing-boost-your-experience-with-postman-part-i-3jgk
PREV
NUNit 和 C# - 从头开始​​自动化 API 测试的教程
NEXT
提升 Postman 的使用体验 - 第二部分