在说负载测试之前,先看看以下几个例子:
<强>目标:强>
1、测试小明在短时间内能举起的最大重量;
2,小明在某个较长时间内能一直保持举起状态的最大重量;
<强>关键点强>:短时间:多短的时间,1秒? 2秒?长时间是指多长? 1分钟? 30分钟吗?
<强>分析结果强>:都是测试小明在某个指定的时间内能举起的最大重量,定义的时间长短直接影响到测试结果,即测试结果是基于某个前提的。
<强>测试方案强>:
1,多次尝试来确定
(1)在规定时间内,小明先尝试举起50斤的;
(2)如果能举起则尝试举起100斤,否则尝试举起75斤的;
(3)如果能举100斤起则尝试举起150斤,否则尝试举起125斤;
(4)往复尝试举起,直到找到小明能在规定时间举起的最大重量;
<>强优点:>强能快速找到一个大概测试值,耗费的资源较少(时间等),因为尝试的夸大度,次数少;
<强>缺点:>强较难找到一个较为准确的测试值;
2,持续尝试来确定(这里用人来做例子不太妥当——毕竟人是会累的,如果应用到计算机的话就挺合适的)
(1)小明先举起50斤,然后有人同步开始计时;
(2)在计时期间内,小明保持举起50斤的状态;
(3)第一个计时结束后,有人给小明加1斤的重量,并开始第二个计时;(1斤只是一个比喻,可根据需要适度调整)
(4)一直循环计时,并尝试举起,直到找到小明能在指定时间举起的最大重量;
<>强优点:>强能找到一个较为准确的测试值;
<强>缺点:强>耗费的资源较多,因为要持续测试,测试值的变化是缓慢的,需要测试较多的次数;
好了,相信大家已经明白我说的是啥了,就是要测试软件系统在指定条件的最大负载;
1,
。从实际出发,如果时间足够短的话,就是高并发的压力测试,在某个极端短的时间内,服务器收到超级无敌多的请求(一瞬间的巨大压力),测试系统的性能指标:响应时间,事务丢失数,每秒等,然后再考虑性能指标是否符合期望;
b。从要求出发- - - - - -在指定系统的性能指标(每秒,响应时间等),然后测试在某个极端短的时间内,系统支持的最大请求数量;
2,
。从实际出发,如果时间足够长的话,就是持续请求的负载测试,在某个极端长的时间内,服务器持续收到一定数量的请求,测试系统的性能指标(如响应时间),然后再确定性能指标是否符合期望;
b。从要求出发- - - - - -在指定的性能指标(每秒等),然后测试在某个极端长的时间内,系统能【稳定】支持的请求数量;
3,一般来说,短时间压力测试的每秒值比长时间负载测试的每秒值要大;
Jmeter测试演示后期补充。