负载测试压力测试强度测试容量测试的区别

粤港澳大桥2022-07-08  23

广义的性能测试是指以下类型的性能测试:性能测试、负载测试、压力测试、稳定性测试、通用系统的性能指标。

响应时间(系统为其提供服务所需的时间)。

吞吐量(简单来说,单位时间内系统可以处理多少事务/请求/单位数据等。).

资源利用率(常见的资源有:CPU利用率、内存利用率、磁盘I/O、网络I/O)。

命中次数(系统在单位时间内响应客户的请求,这是系统处理能力的一个非常有用的指标)。

并发用户数(并发用户数用来衡量服务器的并发能力和同步协调能力)。

让我们以其中的一些性能指标为例,比如chestnut。我们先假设一个场景:XX查询系统,其中一个产品规格(性能指标)是300个用户并发查询,页面首屏结果请求响应时间小于3秒。

随着被测系统负载的增加,系统TPS的趋势图如上图A/B/C/D四个点所示:

答:产品规格(性能指标)

b:高于性能指标,接近系统资源临界点。

c:高于性能指标,达到最大,有一个性能拐点(可以理解为最大并发用户数)。

d:远远高于性能指标,系统崩溃。

性能测试系统在A点的性能..

性能测试是获取系统在一定条件下(包括一定负载条件下)的性能指标数据。

从A点到C点负载测试系统性能..

负载测试的目标是测试系统在一定负载下的性能(不注重稳定性,也就是说不注重长期运行)。在实践中,我们往往从一个相对较小的负载开始,逐渐增加模拟用户的数量(增加负载),观察应用响应时间、数据吞吐量、系统资源利用率(如CPU、内存)等。在不同的负载下,直到系统的一项或多项性能指标达到安全临界值(比如系统内存饱和)才能发现系统可能存在的问题,比如预性能、内存泄漏、无法实时同步(不注重稳定性,也就是说不注重长期运行)。它是测试系统在不同负载下的性能指标。

A点和b点之间的稳定性测试。

稳定性试验一般在低于性能值的前提下进行,一般稳定性试验时间为n*24小时。测试时,我们需要根据用户的实际情况来控制测试中的负载,使测试结果更加准确可靠。

压力测试测试从B点到D点的系统性能..

压力测试是在负载高于性能指标(过载)的前提下对系统进行测试,检查应用系统在峰值使用条件下的运行行为,从而有效发现系统某项功能的隐性收益,以及系统是否具有良好的容错性和可恢复性。压力测试分为高负载下的长期(如124小时以上)稳定性压力测试和极端负载下的破坏性压力测试,导致系统崩溃。

稳定性试验:在选定的压力值下,能长时间连续运行。通过这种压力测试,可以检查性能指标是否在规定范围内,是否存在内存泄漏或功能故障。破坏性压力测试:稳定性压力测试可能存在系统性能明显下降等问题,但很难找出真正的原因。通过破坏性的持续增压(系统在极限载荷下崩溃)的方式,系统往往很快崩溃。压力测试中的一些注意事项

测试时需要注意的是,不是负载超过了系统的最大处理能力,而是系统功能会失效。比如OA签到,最多支持500个用户登录,但是当550个用户同时登录时,系统要保证500个用户都能正常登录,而不是所有用户都无法登录。用户的业务负载并不平均,可能会在极短的时间内超过负载,比如某宝双十一。因此,不建议使用持续超过系统负载的测试方法进行压力测试。只要有足够的负载,系统就会一直挂起。建议使用突然负载模型。

转载请注明原文地址:https://juke.outofmemory.cn/read/644485.html

最新回复(0)