Loadrunner测试结果分析之数据过滤分析
测试问题分析:
我们在进行接口压力测试时,重点关注的性能指标是系统事务处理能力和压力测试一段时间最多能处理多少事务或者每秒最大能处理的事物总数等,这时我们会使用例如loadrunner压力测试工具进行压测几分钟看结果事务处理能力,这时loadrunner会把我们定义的交易事务名称和工具自带的acion事务加总进行统计,导致事务总数的结果值被累加放大,干扰我们的结果分析真实性,这时我们需要通过lr结果筛选器进行过滤筛选出我们定义的业务交易进行分析统计,才是真实的结果数据,特别是混合场景压力测试更需要过滤统计。
测试场景分析:
因为性能压力测试不仅仅要压力测试单功能交易下的各项想念指标是否满足要求,更重要的是模拟生产环境,选择典型、重要、交易频度高的各类业务交易进行综合性混合场景压力测试,其测试目的:在一定量的并发压力情况下,获取其业务的平均交易响应时间、应用服务器的资源使用情况、交易正确率等。通过性能测试,可以模拟实际生产环境中在业务处理高峰期系统的压力情况,得到此时的系统性能表现数据,为系统的实际生产运行提供可靠的参考。
测试方法:按照“一般日间联机交易和预约转账测试模型”规定的交易和配比,采用vu等比压力梯度递增方式施压,压力增长直至出现系统瓶颈或资源超过安全范围为止。
其他测试场景方法可以参考:http://blog.51cto.com/372550/2068876
工具问题分析:
在综合性混合场景进行压力测试下,如果通过loadrunner进行压力测试,结果分析时,会产生很多事物名称、自定义的事务名称、LOADrunner自带的事物名称等都会被统计加以综合性分析,例如TPS、HPS、响应时间等这时会影响实际我们想要的结果。如下图:我们要分析平均响应时间,这时会把 action_transaction 、Vuser_end_Transaction、vuser_init_Transaction也统计进去。
通过下图也可以看到在统计TPS的时候,也包含action_transaction 、Vuser_end_Transaction、vuser_init_Transaction,
这时计算总的TPS时也会把action_transaction 、Vuser_end_Transaction、vuser_init_Transaction, 统计进去,导致TPS不准确,比真实的数据还大,如下:
问题处理技巧:
我们可以通过loadrunner结果分析工具进行过滤分析,抽取真实的,我们实际压测交易的事务进行过滤,如下方式进行过滤分析:
这时可以看到,如下总的TPS和响应时间分布图
这样在统计分析数据的时候,也可以方便一次性统计分析。