什么是可扩展性测试?


什么是可扩展性测试以及如何通过示例学习

系统/应用程序必须能够在过载的情况下完美运行。可扩展性测试的特点是,根据用户请求数量、数据量、交易量和用户流量的增加来测试系统的效率。开发人员会识别出系统停止响应变化的点,并深入挖掘以找到其原因。

可扩展性测试的显著特点

  • 它可以告诉你应用程序在重载下的表现

  • 它让你了解应用程序在用户体验方面的局限性

  • 它可以帮助你确定服务器的效率和限制

  • 它可以深入了解用户在系统/软件/服务器过载期间的体验

可扩展性测试与负载测试

可扩展性和负载测试都属于性能测试的范畴。

可扩展性测试提供有关系统在每个级别的最低和最高负载下将如何表现的信息。它考虑所有级别,例如软件、硬件和数据库。一旦开发人员找出最佳负载,他们就会通过提高其可扩展性来修复系统。

同时,负载测试用于测试应用程序如何响应最大负载。它告诉你超过峰值点的负载,这可能会导致系统崩溃。结果,你的用户将无法再使用该系统。

示例 -

假设你想知道多少用户可以同时使用此应用程序。经过可扩展性测试后,你发现你的应用程序可以承受高达 15,000 个用户的负载。

现在,你有两种选择可以采取行动 -

  • 你可以减少应用程序在达到 15,000 个用户后的响应时间

  • 你可以增加 RAM 大小以容纳更多用户

可扩展性测试
负载测试
逐渐增加应用程序的负载
一次性对应用程序施加最大负载
找出崩溃的原因并
指出应用程序最有可能
采取必要的措施来修复它
崩溃的点
确定系统的扩展能力
确定应用程序的性能问题

为什么可扩展性测试对组织来说是必要的

从技术上讲,可扩展性测试允许开发人员在系统/软件中查找缺陷并在最早的时候纠正它们。但是,它还带来了更多好处。

以下是选择可扩展性测试的一些原因

确定用户体验因素

它告诉开发人员应用程序如何在低、中、高负载下响应,以便提前采取纠正措施。

告知应用程序的局限性

它让开发人员了解应用程序在响应时间、CPU 使用率、网络使用率和其他属性方面的局限性。

避免公司遭受经济损失和声誉损害

严格的可扩展性测试允许开发人员在将应用程序发布到生产环境之前构建一个健壮且无错误的应用程序。它还有助于在测试阶段早期检测性能问题。在生产环境中修复这些问题将花费组织大量资金。因此,它可以避免组织因糟糕的用户体验而遭受经济损失和声誉损害。

可扩展性测试中测试的属性

可扩展性测试属性指的是关于系统/应用程序特性的性能测量过程。

以下是可扩展性测试中测试的一些关键属性 -

响应时间

用户发送请求后,应用程序需要一定时间才能响应。用户请求和应用程序响应之间的时间称为响应时间。开发人员进行此测试以了解应用程序在最低、阈值和最大负载下将响应多长时间。它还可以确定应用程序的断点。

吞吐量

吞吐量是指应用程序在单位时间内可以处理的请求数。对于基于 Web 的应用程序,吞吐量是根据单位时间内处理的用户请求数来衡量的。同时,对于数据库,吞吐量是通过计算单位时间内处理的查询数来衡量的。

内存使用情况

每当我们使用应用程序时,它都会使用一些内存来访问设备的随机存取内存,从而使应用程序能够有效运行。应用程序使用的内存量称为“内存使用情况”。它通常以字节为单位进行衡量,例如兆字节、千兆字节和太字节。通过采用更好的编程实践,开发人员可以最大程度地减少应用程序的内存使用情况。

CPU 使用率

CPU 使用率指示应用程序对系统/设备处理器的压力程度。换句话说,它表示当我们使用应用程序时,处理器内核的百分比是多少。它以兆赫为单位进行衡量。图形密集型、编辑和游戏应用程序主要预期 CPU 使用率较高。但是,编码不当也会导致应用程序消耗高 CPU 利用率。

网络使用情况

网络使用情况测试会告知开发人员应用程序的带宽消耗。这里的目标是限制网络使用以减少网络拥塞。开发人员可以使用压缩技术来最大程度地减少网络使用情况。

事务响应时间

事务响应时间定义了应用程序完成交易或业务流程所需的时间。它允许开发人员在性能测试过程中查找瓶颈。

除了以上这些之外,可扩展性测试还包含一些较少使用的属性,例如重启时间、会话时间、每秒事务数、网页加载时间、任务执行时间等等。

可扩展性测试的测试策略

测试策略是描述软件测试过程的系统流程的概述。它通常根据你需要测试的应用程序类型而有所不同。

例如,如果你的应用程序带有数据库,则你的测试参数应侧重于在数据库崩溃之前有多少用户可以访问它。同样,对于电子商务应用程序,参数应该是测试服务器的平均交易时间与同时用户的数量。

以下是一些用于制定测试策略的基本测试参数

评估和积累先决条件

  • 找到能够承受来自多台机器的负载并且可以从单个位置进行管理的最佳负载测试工具。

  • 找到运行负载测试主机的正确操作系统

  • 确定用于运行测试代理和负载测试主机的 CPU

  • 分析运行测试需要多少内存

定义可扩展性测试流程

以下是执行可扩展性测试的分步检查清单 -

  • 选择可重复的过程

  • 定义将根据其测试应用程序可扩展性的标准

  • 准备运行测试所需的工具列表

  • 创建测试环境

  • 配置任何硬件(如果需要)

  • 列出测试场景

  • 草拟和评估负载测试和可视化脚本场景

  • 执行负载测试

现在最后一步是评估结果并准备报告。你的报告必须包含改进指南。例如,如果你预计你的网站流量在两个月内增加 200,则必须实施提高服务器性能的方法。

更新于:2021 年 3 月 18 日

300 次浏览

开启你的职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.