最近有朋友老问关于90%的响应时间不太理解,顾摘录如下内容供大家参考:
官方解释:
Solution: The 90th percentile is the value for which 90% of the data points are smaller
The 90th percentile is a measure of stastical distribution, not unlike the median. The median is the middle value. The median is the value for which 50% of the values were bigger, and 50% smaller. The 90th percentile tells you the value for which 90% of the data points are smaller and 10% are bigger.
Statistically, to calculate the 90th percentile value:
1. Sort the transaction instances by their value.
2. Remove the top 10% instances.
3. The highest value left is the 90th percentile.
由此可见,仅仅有平均事务响应时间是不够的。因为平均事务响应时间满足了性能需求,未必就表示系统的性能已经满足了绝大多数用户的要求。
假如有两组测试结果,响应时间分别是 {1,3,5,10,16} 和 {5,6,7,8,9},它们的平均值都是7,你认为哪次测试的结果更理想?
所以
1)90%响应时间它是统计响应时间的参数,带有统计学意义,是科学性的;
2)可以这样理解,这个事务所有的运行次数中,90%的次数落在这个响应时间里;(90%的响应时间不超过XX秒)
3)90%响应时间可以在LoadRunner中根据需要进行自由设置的,例如70%,95%;
4)为了真实的评估软件性能,建议让测试场景执行较长的时间,让工具采集更多数据,数据越多,在概率论中的数据分布中看,最具有真实性;
5)该参数是性能测试结果的一个算法,与测试工具无关,无论你是使用LoadRunner、JMeter或其它性能测试工具,该理论同样适用。