一直以来都不喜欢也不擅长总结和记录,看到过的学习过的东西直接都是放参考链接的。但慢慢的发觉总结可以帮助我们更好的理清思路,同时也希望给其他小伙伴一些参考。下面进入正题。
最近在做前台重构项目,到目前为止功能测试还有几个小bug,在开发修复bug的期间,我们录制了相关功能的压测脚本。我们此次要压测的页面和功能有登录 、首页 、下单、会员中心、.我的订单 、.商品详情页。以下单为例,使用loadrunner11录制过程如下:
1.打开脚本生成器,英文为Virtual User Generator,点击新建按钮,如下图:
2.选择协议,下单页面时基于http协议的,所以这里选择http协议,点击create,如下图:
3.将要访问的链接输入到URL Address 中,如下图:
l
4.点击ok之后会调起ie浏览器,此时手动走一遍下单流程,登录--选择一个商品进入到该商品的详情页--点击立即购买进入到下单页面--提交订单 ,整个流程执行完毕点击结束录制按钮,如下图,脚本会自动生成
生成的脚本需要调试。
1.首先要去除不需要的内容,像一些web_add_cookie,或者其他不相关的链接等都可以去掉,如果不确定是否有用,可以将该段脚本先注释掉。
2.做关联。
下单页面的脚本如下:
其中memberId和addressId随着用户不同而改变,而token每次进入下单页面都会返回一个新的token值,所以token、memberId和addressId这三个参数都要做关联。一般做关联会在需要关联页面的上一个页面添加关联,关联放在请求之前。例如,saveOrder这个页面要做关联,他的上一个页面是list,那么我们就在list请求之前添加关联。添加关联的步骤为:右键-insert-New step,搜索web_reg_save_param,点击ok,打开如下图所示的弹框。
parameter Name为关联的参数名,可以随意起,最好与实际意义相关
left Boundary 为左边界,即你要关联参数的左边的字符,可以先随便写,确定后再改
right Boundary 为右边界,即你要关联参数的右边的字符,可以先随便写,确定后再改
not Found 勾选上,表示没有关联到这个参数时的报错信息
search in 勾选上,表示搜索范围
最后点击ok,脚本中就会出现下面这段脚本
然后返回录制的脚本找到关联参数,步骤如下:
右击-find-输入要查找的参数memberId,查找出来之后可以复制到脚本中(需要注释掉),同时将关联参数的左边界和右边界替换,注意特殊字符的转义,如下图:
其他参数的关联也是这个步骤。需要参数关联的还有submit_order.html中的newSignature。
3.参数化。
将要参数化的参数选中,右击选择replace with a parameter。。。。。在此不做过多介绍,不会的小伙伴可以在网上查找答案。
调试完毕,回放发现还是不成功,submit_order.html中的newSignature参数没有去到值,submit_order.html前一个页面是saveOrder ,关联参数也是在saveOrder页面进行,为啥取不到值呢?通过fiddler抓包发现savaOrder为ajax异步请求,如下图:
所以需要在脚本中交上异步调用,如下图:
再次回放,回放成功。至此,调制完毕。
如有不足,欢迎批评指正!