考虑到应用程序实现的规模,在给定时刻有多达数百万活跃用户,这些 API 如何保持性能并且不会崩溃? 主要组织如何应对这一任务关键型技术挑战? 答案是 API 性能测试。
API 性能测试是一个广阔的领域。 这篇简短的文章将帮助您了解 API 性能测试的内容、原因和方式,并熟悉基本术语。
什么是 API 性能测试?
API 性能测试是一个巨大的保护伞,包含许多不同的 API 测试子集。 从广义上讲,有两种主要类型的 API 测试:
功能测试
功能测试验证 API 的功能。 例如,测试可用于确保 API 返回给定输入的所需输出。 这些测试通常在 API 开发期间或发现错误后执行。
非功能性性能测试
性能测试是一种非功能性 API 测试。 这些测试是在 API 开发之后完成的,目标是使用虚拟的“真实世界场景”测试 API。 让我们更深入地了解一些常见的 API 性能测试类型。
负载测试
在负载测试中,API(服务器)和用户(客户端)之间的客户端-服务器系统模拟多个用户同时访问 API。 这些虚拟创建的用户 (VU) 是负载测试中的“负载”。
负载测试回答了以下问题:
- 给定数量的网站用户将如何影响网站性能?
- 一个网站或应用程序可以同时处理多少个用户?
- 我的 Web 应用程序中的瓶颈在哪里?
- 我的网站的突破点是什么?
- 系统何时会耗尽资源?
一些其他类型的性能测试是:
- 尖峰测试。 尖峰测试使软件应用程序受到用户负载突然增加的影响。
- 耐久性测试。 这将测试软件应用程序如何响应增加、延长的用户流量级别。
- 批量测试。 体积测试,有时也称为泛洪测试,针对大量数据测试软件应用程序,以查看其响应方式。
- 可扩展性测试。 可伸缩性测试提供了一种查看应用程序或系统如何纵向扩展和/或缩减到各种用户级别的方法。
这是对“什么”的简要介绍。 现在让我们看看“为什么”。
为什么你必须进行API性能测试:案例研究和资源
随着您的在线业务的增长,用户群也会增长。 如果没有定期监控和维护,API 在某些时候更容易崩溃。
一个著名的案例研究 2020 年 2 月英国希思罗机场中断是一个很好的例子,说明为什么软件的负载测试是必不可少的。 还可以查看本文以了解有关负载测试在软件开发中的重要性的更多信息,并参考本文以了解性能测试 API 的经济效益。
简而言之,API 性能测试可帮助您防止停机以及导致的所有相应问题。 现在让我们谈谈 API 性能测试的“方式”。
如何使用 Dotcom 监视器的 LoadView 测试进行 API 性能测试
我们的 LoadView 平台提供各种按需解决方案,用于通过用户友好的仪表板在几分钟内实施和执行的各种 Web API、网页和 Web 应用程序测试。
在 LoadView,我们在真实浏览器中提供无忧的基于云的负载测试,这意味着不需要外部应用程序或库/框架。 负载视图测试使 API 性能测试变得简单。 方法如下。
负载视图的工作原理
LoadView 使用负载喷油器服务器 (LI) 的全球网络来生成用户负载以测试网站性能。 LoadView 提供了针对各种目标创建和加载测试的功能。 LoadView 提供的一些负载测试类型包括:
- HTTP/S
测试 URL 的辅助功能、性能、正确内容、错误、断开的链接等。 - Website
模拟并发用户加载联机页面。 从Chrome,Microsoft Edge和Firefox以及iOS,Android,Windows和BlackBerry等移动浏览器中进行选择。 - 网络应用程序
使用每个步骤 Web 记录器创建测试脚本,以对照在真实计算机(Chrome 和 Edge)和移动设备上执行特定操作的并发用户检查 Web 应用程序。 - 流媒体
测试音频和媒体流的性能和可用性。 - 肥皂网API
检查 SOAP Web 服务的性能、正常运行时间和响应。 - 休息网络API
检查 REST Web 服务的响应内容、正常运行时间和性能。 - 邮递员收藏
通过将邮递员集合导入 LoadView 来测试 Web API。 - 硒
通过运行Selenium测试项目与来自世界各地不同位置的数千个并发用户来测试Web应用程序。
负载视图负载测试配置
负载类型
使用 LoadView,您可以选择负载步长曲线、基于目标的曲线或动态可调曲线。 这些负载曲线选项允许您调节并发用户的数量,以匹配实际方案并提供更真实的测试结果。
测试持续时间
测试持续时间和测试限制确定并发用户会话数和测试持续时间。 阅读我们的 LoadView 容量限制文档,了解有关测试限制的更多信息。
用户行为
为了模拟真实访问者如何在您的网站中移动,使用了用户行为。 您可以在常规、最大或自定义选项之间进行选择。 使用“正常用户模拟”选项时,将添加 3 到 6 秒范围内的随机延迟来模拟普通用户的行为方式。 当您选择“最大值”时,测试将尽可能快地完成。 您可以使用此功能在系统上运行压力测试,并确定达到最大容量的位置和时间。
“自定义”选项使您能够选择与“正常”选项相同的随机延迟,但允许更短和更长的延迟,范围从 0 到 30 秒,以实现更大的个性化。
地理位置
要根据人们通常访问您网站的位置来模拟更真实的用户情况,您可以从各种地理区域中进行选择,并使用 LoadView 在区域之间划分虚拟用户。 一次从二十多个地方中进行选择。
测试摘要
测试管理员可以查看图表,这些图表演示响应时间如何随着负载和用户计数的变化而变化。 测试执行计划、平均响应时间、会话数、按类型划分的错误数以及每个负载喷油器的 CPU 消耗是您可以查看的一些图表。
此处还显示了错误,以及有关遇到的问题类型以及测试期间发生时间的信息。 来自给定测试的原始数据可以下载为 CSV 文件,您可以使用这些文件为利益干系人和团队成员构建自定义报告或演示文稿。
如果您还没有,您可以 在此处开始免费试用 LoadView 平台。 如果您想进行一对一演示,请 与我们的性能工程师预约时间。 我们很高兴收到您的来信。