这两天在测试一个项目的性能。
现在还是入门级别地使用LoadRunner。
这个项目其实没有很大的特别之处,从app端传数据给sever端。
测试的是接口之处。
算是一个练手。
但是进度被停滞了。
一方面是因为相关联的系统服务器uat环境比较差,一个cpu,内存3G,应该造不成什么压力的场景,服务器就已经撑不住了。
另一方面是用LR压测的时候,有两个现象:单用户迭代25次的时候,一开始就报错;响应时间也不正常的长。
前者我有点知道是怎么回事。一开始就报错,报的是Step download timeout。
在脚本编写的时候有几个version字段,这几个字段是分别判断版本,如果请求中的版本不等于当前版本,那么就会自动下载新版本,应该是由此引起的。
将version字段修改成当前的版本,即可。
至于响应时间,我不确定生产环境是怎么样的,询问了一下开发他们也是没有做过调研,怀疑是本身响应时间就会那么长导致的。具体的还在查。
关于压测环境,有条件的话还是要和生产环境差不多,相差太多,测试出来的数据并不能体现真实的吞吐水平。
但是公司好的服务器基本都分配给了大项目,(╯▽╰ )我们也无可奈何。
想到的唯一方案是性能测试组自己去申请好的服务器,让项目组过来部署。(在我写这篇的文章的时候,这个方案已经被枪决了。)
服务器好差真的很重要。
之前有一个项目,在uat上测试,服务器是新申请的,8核16G应该算是不错了。
正好也巧,生产服务器需要搬迁,可以在搬迁前测试一下新的服务器,生产环境最差的配置就是12核16G,并且是memcache单独一台,HAproxy一台,还有3-5台不低于前面的配置。
测试出来可想而知了。差距太大了。╮( ̄▽ ̄")╭
感觉当前的性能测试意义不大。
好像是各个步骤都做了,但是改进的东西很少或者即使有问题,也不改,呵呵。
不过也是因为自己刚开始,无法让开发信服。还需要继续努力。