Jmeter的Html报告汉化及解析:https://blog.csdn.net/smooth00/article/details/100769262
前置条件:参见上方文章,我们公司搭建了一套性能测试平台,可运行jmeter脚本并生成性能测试报告;
均为个人见解,不见得完全正确
按以下顺序分析:
一、响应时间(位置:图表--》时间维度--》响应时间RT)
正常情况下,响应时间的曲线图应该是平滑的,大致平行于横轴;
下面为几种可能存在性能问题的图:(来源于 书籍:零成本实现Web性能测试336页,原图为讲解 jmeter自带的 监控器--》图形结果--》平均响应时长,这里仅为借用)
1、初始阶段跳升,而后逐渐平稳
说明系统在初始阶段响应较慢;可能有3种情况:
1)系统在初始阶段存在性能缺陷,需要进一步优化,如数据库查询缓慢。
2)系统有缓存机制,而性能测试数据在测试期间没有变化,如此一来同样的数据在初始阶段的响应时长肯定较慢,而后续响应时长基本一致。这属于性能数据准备的问题,不是性能缺陷,需调整后再继续测试。
3)系统架构设计导致的固有现象,如在系统接收到第一个请求后,才去建立应用服务器到数据库的连接,后续一段时间内不会释放连接。这种情况属于性能缺陷,需要测试人员与系统架构师、开发人员、最终用户等角色一起确认。
2、平均响应时长持续变大,图形越来越陡峭
这种情况基本可以肯定存在性能缺陷,如内存泄漏。测试人员需要及时上报缺陷,并协助开发定位问题。测试人员可以通过监控系统日志、监控应用服务器状态等常见方法,来尝试定位问题。
3)平均响应时长在性能测试期间,突然发生跳变,然后又恢复正常
这种情况,可能是系统性能缺陷,也可能是测试环境不稳定造成的。
首先要排除测试环境不稳定带来的影响,一是检查应用服务器状态(CPU占用、内存占用等),如果待测系统与其他应用系统共用服务器,需排除其他系统带来的影响。二是检查测试环境网络是否存在拥塞。
如果能够排除测试环境的影响,测试人员接下来应该通过多种手段(监控应用服务器、监控数据库、监控系统日志等)来确认是否存在性能缺陷,例如,对某些特定测试数据的处理存在问题。