响应时间测试——如何测量 API?

什么是响应时间测试?

响应时间测试 测量一个系统节点响应另一个系统节点的请求所花费的时间。这是系统从达到特定输入到流程结束所花费的时间。例如,您有一个 API,您想确切知道执行它并返回 JSON 数据需要多少时间。响应时间测量每个事务或查询的服务器响应。

响应时间从用户发送请求时开始,到应用程序声明请求已完成时结束。

如何测量响应时间?

测量响应时间,我们可以通过用开始和结束事务包围重要的业务流程来使用测试工具。业务流程可能是用户在应用程序中执行的一个操作或一组操作,以完成业务任务,如登录应用程序或购买书籍 Amazon.com

响应时间测试
响应时间测试

对于测量 API 响应时间的相同过程,不同工具的响应会略有不同。原因如下

  • 步骤1) 每个 API 响应时间测试工具收集的指标的计算方法
  • 步骤2) 工具模拟加载和捕获速度,这可能会对响应时间产生影响
  • 步骤3) 监控用户负载时记录的额外项目
  • 步骤4) 由于资源消耗大,每个工具收集的计算指标会增加响应时间。
  • 步骤5) 两种工具的架构可能不同

响应指标的类型

响应时间指标 说明
平均响应时间 平均响应时间是每次往返请求所需的平均时间。平均响应时间包括 HTML、CSS、XML、图像的加载时间, Java脚本文件等。因此,当系统中存在缓慢的组件时,平均值会受到影响。
峰值响应时间 峰值响应时间有助于我们找到可能存在问题的组件。它有助于我们找到网站或系统中所有未正确处理某个请求的异常情况。例如,可能执行了会影响响应时间的大型数据库查询。此查询不允许页面在所需的时间加载。
错误率 错误率是一种数学计算,它显示问题请求占所有请求的百分比。此百分比统计服务器上显示错误的所有 HTTP 状态代码。它还统计超时的请求。

三个重要的响应时间值

响应时间测试有两个最基本的特征:

  • 平均响应时间。
  • 最大响应时间。

它显示用户需要等待服务器响应其请求的时间。

以下是关键响应时间测试示例值

响应时间 意义
0.1二 这是最优选的响应时间。如果响应时间为0.1,则用户始终会感觉到应用程序或系统正在即时响应,并且不会感觉到任何中断。
1.0二 它被定义为可接受的响应时间的最大限度。用户不太可能感觉到任何中断,尽管他们可能会遇到一些延迟。超过 1 秒的响应时间可能会影响用户体验。
10秒 这是响应时间超出可接受限度的最大限制。然而,在当今时代,如果响应时间超过 6 秒,用户将离开该网站或退出应用程序。

一般情况下,响应时间应尽可能快,在0.1-1秒的范围内。然而,人们可以适应较慢的响应时间,但永远不会对超过2秒的响应时间感到满意。 Less响应时间越快,客户满意度就越高,成本越低,客户满意度就越高。

响应时间测试工具

市场上有许多响应时间测试工具。响应时间测试工具最突出的三个例子是:

1) JMeter

Apache JMeter 是一个开源负载测试工具。它旨在衡量网站的性能。此负载测试工具可用于 DevOps 方法。

JMeter

特色:

  • JMeter 允许对各种服务器类型执行负载和性能测试。
  • 该负载测试工具以 XML 格式存储其测试计划,允许用户使用文本编辑器生成测试计划。
  • 该工具可用于执行自动化和 功能测试 应用程序。

下载链接: http://jmeter.apache.org/download_jmeter.cgi


2)负载运行器

Micro Focus 的 Loadrunner 是一款广泛使用的负载测试工具。它是 JMeter 它提供了带有彩色图表和图形的用户友好的监控和分析界面。

负载运行器

特色:

  • 支持连续测试
  • LoadRunner 可以在多种企业环境中有效运行
  • 可以使用 Loadrunner 运行多个协议脚本
  • 与各种开发工具集成 Visual Studio中詹金斯 Selenium等等。

下载链接: https://software.microfocus.com/en-us/products/loadrunner-load-testing/overview

结语

  • 响应时间是指一个系统节点响应另一个系统节点的请求所需的时间。
  • 平均响应时间 性能测试 是每次往返请求所需的平均时间。
  • 峰值响应时间帮助我们发现哪些组件可能存在问题。
  • 错误率是一种数学计算,显示问题请求的百分比。
  • 三个关键的响应时间值是:0.1 秒、1.0 秒和 10 秒。
  • 三种最常用的响应时间测试工具是 捷米特, 负载运行器