|
压力负载测试的一些经验之谈
接触LR有些时间了,也做过几个大型政府OA的测试,一直有一些想法想法和大家交流。
LR做压力负载是一个很少的工具,目前在世界上的市场份额也是最多的,大约在70%左右,次之的是QA_load。
压力负载测试最重要的是环境的配置,一定要模拟真实的环境,否则得出的结果会和真实情况有很大的出入。
比如数据库查询时,库里的数据一定要多,也就是所说的大数据量测试。
环境配置根据不同的系统存在很大差异,但是也有一定的规律可循,或者说一般也有一些通用的原则:
1、并发用户数一般是在线用户数的2%~3%,需要注意的是使用用户数、在线用户数和并发用户数的却别;
2、事务响应时间:3秒之内(非常好)、3-5秒(一般)、5-8秒(免强接受)、8秒以内(用户不能接受),一般都遵循3、5、8原则;
3、每秒事务数:80%的事务在20%的时间内完成(一年安160天算,一天8小时算),一般遵循80-20原则;
4、服务器在受压情况下,cpu最佳占用率为60%~80%,多了cpu受不了,少了资源浪费;
5、服务器在不受压情况下,内存占用率最佳为25%,多了影响服务器性能;
压力负载测试中也需要注意:
1、注意区别内存泄露和动态内存分配问题;
2、注意压力端和服务器端的网络流量,一般来说目前的网络不会是系统的瓶颈,但是也需要注意;
3、单机的压力用户数不要过多,否则会影响测试结果,最好不要超过300;
4、分不同的组来运行不同的事务脚本,应真实的模拟系统情况;
以上也是我个人的一些认识,不对的地方,请大家指正。目的只是想多交流,和大家共享,一同提高。
附件中有一个LR的高级应用-dll调用(摘自深圳论坛),大家可以研究研究。 |
|