Postman 负载测试教程



当今的许多 Web 服务都包含 API(应用程序编程接口),从而实现系统之间的各种信息交换。 API 是基本服务和用户之间的可靠连接。 与测试任何关键系统组件一样,评估 API 是必不可少的。 采用第三方 API 测试工具(如 Postman)有助于手动和自动测试,包括 API 监控功能。

Postman 是测试工具领域中广受赞誉的工具,用于验证 API 请求。 虽然它在一般 API 测试中的采用很普遍,但使用 Postman 进行负载测试并不那么简单。

在本 Postman 负载测试教程中,我们将介绍什么是 Postman、Postman 负载测试以及如何使用 Postman 进行负载测试,以便您可以开始使用 Postman 进行负载测试。

什么是邮递员?

Postman 是开发人员用于测试、设计和管理应用程序编程接口 (API) 的常用协作平台和工具。 它提供了一个用户友好的界面,允许开发人员创建、发送和测试 HTTP 请求,包括用于 RESTful API 的请求。 Postman 支持各种 HTTP 方法、身份验证机制,并允许用户组织和自动化他们的 API 测试工作流程。

Postman 是软件开发生命周期中使用的 API 开发工具:

  • API 开发
  • API 测试
  • API 文档

Postman 提供的不仅仅是一个 API 开发环境;它还可以用作请求网页的浏览器。 此外,Postman 允许用户在发送请求之前和收到响应后包含脚本。 每个请求都可以保存在一个集合中,这有助于在需要时按指定顺序执行所有请求。

Postman 用作 API 测试、验证是否正确执行以及验证 API 是否按预期适当地检索、保存或更新资源的工具。 API 测试是功能测试的一部分,以确保基本的 API 功能正常工作。

不过,Postman 不是一个性能测试工具。 虽然您将能够运行小型受控测试,从而获得 API 响应时间,但这与在实际条件下运行测试不同。 Postman 不允许你让 API 承受任何真正的压力,所以它不是一个很好的指标,表明你的 API 在现实世界的场景中受到真实用户的影响时将如何响应。 Postman 性能测试是 API 成功的关键,为了能够针对实际场景对 API 进行负载和压力测试,您需要一个负载测试解决方案来帮助您。 像 LoadView 这样的工具可以填补这一空白,为您的团队提供无数的负载测试功能,以确保您获得测试工作的全面指标。

邮递员功能

Postman 为用户提供了广泛的功能,从 Postman API 和工作流控制到用于回归测试的内置监视器,确保了全面的 API 测试功能。 尽管功能众多,但每个 API 测试人员都必不可少的一些核心功能。 让我们更深入地了解这些关键功能。  

  • 导入请求 – Postman 包括一个导入功能,允许用户粘贴原始 CURL 文本,将其转换为格式化的请求,其中包含请求 URL、标头、请求正文、查询参数和授权令牌等详细信息。
  • 多种协议和支持 – Postman 的 API 客户端功能允许您发送 REST、SOAP、WSDL 和 GraphQL 请求。
  • 编写测试用例 – 您可以编写测试用例来执行 API 并帮助进行响应验证,包括 JSON/XML 响应的断言和响应代码的验证。
  • 收集– Postman 帮助创建集合,从而在文件夹结构中为不同的项目组织 API。 它提供了执行集合的功能,该集合随后运行该特定集合中包含的所有 API。
  • JSON 架构验证 – JSON(JavaScript 对象表示法)架构可用于定义请求和响应的结构。 这有助于组织和构建 JSON 内容,提高其在 Postman 中的清晰度和可读性。
  • 使用环境变量和动态变量 – 在 Postman 中,您可以创建变量,并且可以为这些变量分配不同的值。 事实证明,这在多个实际环境中使用相同的 API 时很有用。
  • 将 API 转换为代码 – Postman 允许将 API 请求转换为所有主要语言的代码,如 JavaScript、Golang、Java、PHP、Python 等等。

Postman 负载测试的优势

  • 绩效评估: 负载测试有助于评估 API 在各种并发用户活动级别下的性能。 它使您可以了解系统如何处理增加的负载以及它是否满足性能预期。
  • 可扩展性测试: Postman 的负载测试功能允许您测试 API 的可伸缩性,帮助您确定它处理不断增长的流量和数据的能力。
  • 识别瓶颈: 负载测试有助于识别 API 基础结构中的潜在瓶颈或弱点。 这些信息对于优化和微调您的系统以确保它能够有效地处理增加的负载至关重要。
  • 压力测试: Postman 允许您通过在 API 上生成重负载来模拟压力条件。 这有助于您了解系统的突破点和局限性,从而进行必要的改进。
  • 并发测试: Postman 中的负载测试使您能够测试多个用户同时发出请求时 API 的性能。 这对于需要处理并发用户交互的应用程序非常重要。
  • 成本效益: 通过在开发周期的早期识别和解决性能问题,使用 Postman 进行负载测试可以防止潜在的停机或生产中昂贵的修复,从而有助于节省成本。
  • 改善用户体验: 通过确保您的 API 能够处理高负载并在压力下表现良好,您可以为用户提供更流畅、更可靠的体验。

使用 LoadView 对 Postman 进行负载测试

虽然 Postman 非常适合 API 测试和开发,但在负载测试方面确实存在局限性。 一个主要缺点是它无法有效地模拟高水平的并发用户或复杂场景。 Postman 的主要关注点是功能测试和验证,而不是压力条件下的性能。 此外,与 LoadView 等专用负载测试工具相比,其图形界面和脚本功能可能无法很好地扩展以适应大量负载或复杂的性能指标分析。 对于全面的负载测试需求,建议使用专为负载测试设计的专用工具,而不是仅依赖 Postman。

使用 LoadView 对 Postman 进行负载测试

在测试后端应用程序时,测试功能是该过程的标准部分,以确保事情按预期工作。 您的应用程序将同时被许多(如果不是数百或数千个)用户使用,因此我们还需要进行性能测试,以了解它们对 流量的承受能力。 我们需要对应用程序进行基准测试和验证,每次应用程序更改。

如果使用 Postman 测试 Web API 功能,并且需要从 API 调用集合生成负载测试,则可以选择使用 LoadView 等负载测试工具。 LoadView 为 API 以及 Web 应用程序(外部和内部)以及 网站和服务器提供真正的基于浏览器的负载测试。

Postman 负载测试设置

我们将逐步研究如何为邮递员集合设置 Web 应用程序负载测试。

第 1 步

在开始之前,您需要导出 Postman 集合。 可以选择“获取公共链接”选项,并可以轻松地将其导入 LoadView。

  • 注意: 请确保 Postman 集合仅使用局部变量,因为环境变量未存储在集合中。
邮递员集合导出

步骤 2

打开 LoadView 平台并选择” 创建新负载测试 “。

 

步骤 3

在这里,你将看到 LoadView 中可用的各种负载测试类型。

Web 应用、网站和 API。 对于我们的用例,您将选择 Postman Collection 选项以启动 API 测试。

负载测试类型邮递员

步骤 4

将打开一个新窗口,您需要在此处导入导出的 Postman 集合,然后单击 “创建设备”。

邮递员收集请求

步骤 5

成功创建设备后,你将看到 “测试方案 ”屏幕,可在其中设置 “负载类型”。 这因测试目标而异。

  • 基于负载的曲线。 这将使用已知数量的用户执行负载测试,并在设置预热时间后增加流量。
  • 基于目标的曲线。 当旨在为我们的特定 API 实现所需的每秒事务数时,以及在扩展到目标并发用户时,会采用此测试配置。
  • 基于动态的曲线。 此配置允许您为用户数、最大用户数和测试持续时间选择动态值。 这些设置可以在测试期间实时调整。
邮递员集合加载类型

步骤 6

使用所有 API 的列表创建测试方案后,现在可以对 API 执行负载和压力测试。

运行负载测试运行后,将向你提供全面的报告、仪表板和指标,以显示 API 和系统在不同负载下的性能。

Postman Collection 负载测试与 Jenkins 集成

在探索了 Postman 集合负载测试与 LoadView 的集成和执行后,我们可以将这些测试合并到 CI/CD 管道中,以接收一致的反馈和性能结果。

LoadView 提供与 Jenkins 的无缝集成,有助于使用来自完全托管的云环境中的真实浏览器中的并发连接对网站、Web 应用程序和 API 进行压力测试。 适用于 Jenkins 的 LoadView 插件允许对任何新更新或其他功能进行负载测试。

让我们检查一下之前在 LoadView 中创建的 Postman 集合测试方案所采用的步骤,以及它如何与 Jenkins 集成。

第 1 步

若要将测试与 Jenkins 集成,将使用与上一节相同的 Postman 测试方案。

步骤 2

创建唯一的 UID 并复制集成 UID。 这将用作集成到 Jenkins 中的安全令牌。

邮递员詹金斯集成 UID

步骤 3

Postman 集合的测试方案 ID 可以在方案设置页或“测试历史记录”页(测试管理器 > 的测试操作菜单 > “历史记录”)上找到。

邮递员集合测试历史记录

詹金斯的 LoadView 插件

要配置 LoadView 插件,请按照以下步骤操作:

  1. 登录您的 Jenkins 帐户。
  2. 在 Jenkins 中,转到凭据>添加凭据 > LoadView 安全令牌 (UID)。 配置并验证凭据。
    • 类- LoadView 安全令牌 (UID)。
    • 范围- 选择 “全局”。
    • 编号 – 保留默认值或指定唯一 ID。
    • 描述- 指定唯一描述以区分凭据。
    • 用户界面 – 粘贴 LoadView 帐户中的负载测试 Web API UID。 添加 UID 后,单击 “验证 UID ”以确保 Jenkins 可以访问 LoadView API。
  3. 接下来,选择一个作业,然后单击配置
詹金斯 LoadView 安全令牌

4. 转到 生成 > 生成后操作: > 添加生成后操作 > LoadView-Run 负载测试方案。 指定生成的 LoadView 压力测试设置:

  • 凭据- 使用说明选择 API 密钥。
  • 方案 ID – 粘贴要在生成中使用的测试方案 ID。 从 LoadView 中的方案页复制 ID。
  • 错误阈值 – 指定测试时发生错误的会话的可接受百分比(无法访问目标资源、未找到关键字/图像等)。 如果错误会话的百分比大于指定值,则生成将在 Jenkins 中标记为失败。
  • 平均时间 – 指定测试执行期间测量 的平均响应时间 的限制。 如果达到限制,则生成将在 Jenkins 中标记为失败。

5. 单击 保存

查看 LoadView 测试结果

最后,我们使用 LoadView 成功地将 Postman 集合与 Jenkins 集成。 当我们的压力测试运行时,状态以实时模式 显示在 Jenkins 控制台输出中。

邮递员詹金斯控制台输出
邮递员詹金斯 LoadView 测试结果结果

结论:使用 Postman 对 API 进行负载测试

在本指南中,我们介绍了如何使用 LoadView 将并发用户与 Postman 集合模拟,以及如何通过使用 Jenkins 与 LoadView 的集成来自动执行此步骤。 最近,评估这些应用所需的工具得到了简化,为测试依赖于内部和外部应用的复杂系统提供了重要帮助。 这种简化有助于更清晰地识别瓶颈和问题。

在 LoadView,我们的目标是成为您所有负载测试工作的合作伙伴,在每个开发阶段为您提供支持并解决任何级别的复杂性。 负载测试不必很复杂,LoadView 的平台使 API 的负载测试过程变得简单。 可以将 Postman 集合与 LoadView 无缝集成,以执行负载测试。

LoadView 的专家团队可以在您制定和增强负载测试策略时为您和您的团队提供支持,您会发现我们的平台直观且易于使用,即使对于非技术用户也是如此。 LoadView 提供真实的浏览器测试、点击式脚本和全面、可读的报告,消除了负载测试中的猜测,并允许跨开发人员职能部门进行有效协作。

立即开始使用 LoadView 对 API 进行负载测试。 注册免费试用版并接收免费的负载测试。 或者与我们的一位性能工程师一起注册我们的 私人演示 之一。 我们的工程师将引导您了解完整的 LoadView 平台,我们将向您展示如何将 LoadView 集成到 Postman 集合中,并使用 Jenkins 自动执行这些步骤。

将您的并发用户测试提升到 一个新的水平

体验无与伦比的功能,具有无限的可扩展性。 没有信用卡,没有合同。