软件测试 |可扩展性测试
可扩展性测试是一种非功能性测试,其中软件应用程序、系统、网络或流程的性能根据其扩大或缩小用户请求负载数量或其他此类性能属性的能力进行测试。它可以在硬件、软件或数据库级别执行。可扩展性测试被定义为网络、系统、应用程序、产品或过程在系统的大小或体积发生变化以满足不断增长的需求时正确执行函数的能力。它确保软件产品可以管理用户流量、数据量、事务计数频率和许多其他事情的计划增长。它测试系统、流程或数据库满足不断增长的需求的能力。
可扩展性测试是测量软件产品或系统在什么时候停止扩展并确定其背后的原因。用于此测试的参数因一个应用程序而异。例如,网页的可伸缩性测试取决于用户数量、CPU 使用率、网络使用率,而 Web 服务器的可伸缩性测试取决于处理的请求数。
可扩展性测试的目标:
可扩展性测试的目标是:
- 确定应用程序如何随着工作负载的增加而扩展。
- 确定软件产品的用户限制。
- 确定负载下的客户端降级和最终用户体验。
- 确定服务器端的健壮性和降级。
可扩展性测试属性:
- 响应时间:
响应时间是用户请求和应用程序响应之间消耗的时间。响应时间可能会根据应用程序上的不同用户负载而增加或减少。基本上,应用程序的响应时间会随着用户负载的增加而减少。具有较短响应时间的应用程序被认为是较高性能的应用程序。 - 吞吐量:
吞吐量是应用程序在单位时间内处理的请求数的度量。它与一个应用程序不同,因为在 Web 应用程序中,它以单位时间内处理的用户请求数来衡量,而在数据库应用程序中,它以单位时间内处理的查询数来衡量。 - 用户数量的性能测量:
根据应用程序类型,始终会测试它可以支持的用户数量,而不会出现故障或繁忙的待机情况。 - 阈值负载:
阈值负载是应用程序可以以所需吞吐量处理的请求或事务的数量。 - CPU使用率:
CPU 使用率是执行应用程序代码指令时 CPU 使用率的度量。它基本上是以兆赫为单位来衡量的。 - 内存使用情况:
内存使用量是对应用程序执行任务所消耗的内存的度量。它基本上是以单位字节来衡量的。 - 网络使用:
网络使用量是对被测应用程序消耗的带宽的度量。它以每秒接收的字节数、每秒接收的帧数、每秒接收和发送的段数等来衡量。
可扩展性测试涉及的步骤:
以下是可扩展性测试中涉及的步骤:
- 定义可重复执行可扩展性测试的流程。
- 确定可扩展性测试的标准。
- 确定执行测试所需的软件工具。
- 设置测试环境并配置执行可扩展性测试所需的硬件。
- 创建并验证可视化脚本。
- 创建并验证负载测试场景。
- 执行测试。
- 评估结果。
- 生成所需的报告。