使用loadrunner进行压力测试遇到的问题总结

时间:2022-12-02 23:16:49

本人整理了一个LR使用过程中遇到的各种问题的总结文档,有需要可以加QQ群169974486下载。

一、无法生成虚拟用户,运行报错:CCI compilation error -vuser_init.c

问题出现情景是:loadrunner当天可以正常运行,保存好后,脚本和参数化也保持一致,第二天再次打开不能使用。在controller中,脚本运行,提示错误:LR8.1 Error: CCI compilation error -vuser_init.c 
直接在loadrunner generator打开之前保存的脚本,点击运行无法执行,在回放日志栏提示:vuser_init.c:No such file or directory 
分析其原因是,缺少文件

使用loadrunner进行压力测试遇到的问题总结

 

解决办法:拷贝一个init.c文件放在测试脚本目录下或者重建一个文件;

二、Error: Failedto send data by channels - post message failed

寻找解决办法,多数测试人员给出解答如下:出现这个问题,目前判断是因为lr和测试机环境或者测试服务的兼容性出现了问题,而且一般的这个问题只是在测试大数据访问的时候才会出现。 
解决办法:在LR的controller负载生成器的菜单栏中的Diagnotics->configure->Web Page Diagnotics[max vuser sampling10%]默认的Enable关掉,重新运行以后这个问题就很少出现了。

使用loadrunner进行压力测试遇到的问题总结

 

原网loadrunner helpcenter,链接如下:https://translate.google.com.hk/translate?hl=zh-CN&sl=en&u=http://lrhelp.saas.hpe.com/en/latest/help/WebHelp/Content/Controller/ui_diagnostics_distribution.htm&prev=search
原因详见下图

使用loadrunner进行压力测试遇到的问题总结

 

三、服务器监测—top命令

性能测试过程中,利用top命令,对服务器的实时性能进行监测。 
详解:(Top命令及参数详解,不再赘述) 
Cpu: 309.0% 用户空间占用CPU百分比 
对于多核cup,此值是个比例值,相对每个cup内核。当前服务器为24核实机。

使用loadrunner进行压力测试遇到的问题总结

 

四、服务器性能检测-io峰值,尖峰的原因

使用loadrunner进行压力测试遇到的问题总结

 

使用loadrunner进行压力测试遇到的问题总结

 

有波动,和开发讨论,有可能是虚拟机垃圾回收了
清理内存时,好像卡了一下,在服务器的监测数据中,明显有尖峰。

五、响应时间和点击率一直上不去的原因—kv数据添加机制

针对本次活动接口测试,服务端布的环境中,会将用户的deviceid和领奖等信息添加到kv中(相当于一个数据池),具体添加数据到kv时间或时机因需求而异。项目中有每天定时添加数据到kv中的数据信息,也有实时添加到kv的数据信息。 
KV数据,同步和异步,服务端性能的区别; 
1)同步写KV数据,占用耗时,平均响应时间在3~4秒左右; 
2)异步写KV数据,请求的响应时间大大降低,在0.3~0.4秒左右; 
在开始压力测试之前,建议需要先和服务端开发沟通相关数据读写细节。

六、Linux内存回收机制-学习

使用loadrunner进行压力测试遇到的问题总结

 

使用loadrunner进行压力测试遇到的问题总结

 

使用loadrunner进行压力测试遇到的问题总结

 

关于Linux的内存回收机制,我也在学习中,O(∩_∩)O,感受到了Linux的美!

七、日志满,无法写log,点击率突降

使用loadrunner进行压力测试遇到的问题总结

 

测试中,用户不断增加,服务器性能较好,感觉不到什么压力,吞吐量也在增加,稳定一定时间后,点击率突然降低,响应时间骤升,此时测试机性能良好。到达极限后应保持,怎么会突然降低呢?查找原因,是开发将日志写在了一个较小的服务器磁盘中,压测过程中产生大量的日志,在测试一段时间后,当前磁盘已经接近饱和,达到100%,报警!

使用loadrunner进行压力测试遇到的问题总结

 

这也让我想到,之后的接口测试除了基本的接口参数、功能等基本内容沟通,还要和服务端开发更深入的沟通了解,部署环境的策略以及日志记录的机制等等,避免此类事情发生,提高测试效率。