1. 用相同的程序包,部署两套环境,在环境1运行通过的脚本却在环境2中回放失败,报下面错误:
环境1:WEB和数据库部署在一台机器
环境2:WEB和数据库部署在两台机器
highest severity level was "ERROR", 67276 body bytes, 4448 header bytes, 11 chunking overhead bytes [MsgId: MMSG-26387]
结果:查看energy-logfile,发现日志报错,如下图:
试图通过关联和检查点解决,均无法解决问题。
LR脚本出错位置:
2.有些时候录制后回放报错,建议将录制关联关闭再试,一般可以成功。
Tools-Record Option-Http Properties-Correlation,去掉勾选
3. LR自动关联的时候,经常会关联错误,将一些不需要关联的动态值做了关联,或者关联的边界是动态的,做了关联后找不到关联的参数,等等问题,所以一般关掉自动关联,某些值需要关联的时候再手动关联,手动关联如下图:
注:因为服务器每次返回给值不同,在下次回放或者脚本执行的时候需要用到该值,但是这个值是动态的,随机的,所以通过关联将该动态值保存到参数中来实现。关联值与参数的区别在于:关联的值是随机产生的,参数值是固定的。
4. 参数化设置
如果select next row:unique,那么设置的参数必须大于vuser数m乘以迭代数n的积,否则场景运行解决可能报参数不够的错误。
insufficient records for param 'NewParam' in table to provide the Vuser with unique data
5. 当场景运行中出现超时错误如:timeout时,可以通过设置超时时间来解决,如下图:
6. LR录制常见问题解决方法:
1).关掉防火墙
2).把第三方扩展关闭
3).如果是64位系统,ie浏览器选择32位浏览器
7.性能测试策略设计时,应该先对简单业务进行测试,再组合测试复杂业务,即先单个击破,才可以看复杂混合业务性能情况。比如先通过负载测试确定典型业务的性能指标,系统性能指标达到预期之后,再进行压力测试,如在一定的负载下进行长时间运行测试系统的稳定性。当然有些时候也会互相糅合在一起进行测试。
1)负载测试,关注性能指标;压力测试关注系统容错、恢复、稳定性
2)负载测试通过增加不同负载,来看系统在不同负载下的性能指标;压力测试是在一定负载下系统长时间允许,关注在大业务量长时间允许系统性能变化(反应变慢、内存泄露、是否出现崩溃,能否恢复等)
3)负载测试如举重100斤、200斤、300斤是否可以更多;压力测试如举200斤维持多久、300斤维持多久。
4)负载测试如看100、200、300个并发用户系统的响应时间、CPU、内存等性能指标如何;压力测试看在一定负载下如300个并发用户下运行7*24看系统的稳定性如何。
5)如果对于响应时间离散较大的业务,可以针对每种类型先做负载测试,看性能指标如何,而不是一开始就将各种类型混合在一起测试。
6)运行场景出错,要具体问题具体分析,一般先单个脚本回放成功后,在进行少量虚拟用户的场景测试,排除参数等设置不当引起的错误。还有通过超时设置排除超时引起的错误。这些排除后,出现错误要去看被测系统的日志,还有各项监控性能的变化等。