一、loadrunner录制原理
(1)录制:录制url或应用程序发出的请求和服务器响应,把它记录下来生成脚本
录制流程可参考文章:loadrunner脚本基本录制流程
(2)回放:模拟真实用户发出请求
二、函数组成
(1)init,录制初始化,执行一次
(2)action,重要操作,可以执行多次
(3)end,退出,执行一次
(4)golbal,头文件
在下图所示位置选择函数视图即可
三、录制方式
(1)html录制,默认,录制出的脚本简单易于理解
(2)url录制,以http请求为单位生成脚本。适用于https、网页中有js、非网页客户端这三种情况。
设置方式:
四、请求函数
(1)web_url、web_link,相当于get请求,请求一个页面
示例:
web_url("WebTours",
"URL=http://127.0.0.1:1080/WebTours/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
(2)web_submit_data、web_submit_form,相当于post请求,提交数据
示例:
web_submit_form("reservations.pl",
"Snapshot=t4.inf",
ITEMDATA,
"Name=depart", "Value=Denver", ENDITEM,
"Name=departDate", "Value=10/27/2021", ENDITEM,
"Name=arrive", "Value=Denver", ENDITEM,
"Name=returnDate", "Value=10/28/2021", ENDITEM,
"Name=numPassengers", "Value=1", ENDITEM,
"Name=roundtrip", "Value=", ENDITEM,
"Name=seatPref", "Value=None", ENDITEM,
"Name=seatType", "Value=Coach", ENDITEM,
"Name=findFlights.x", "Value=33", ENDITEM,
"Name=findFlights.y", "Value=4", ENDITEM,
LAST);
(3)web_image,打开一个图片链接
示例:
web_image("SignOff Button",
"Alt=SignOff Button",
"Snapshot=t7.inf",
LAST);
五、辅助函数
(1)lr_think_time,思考时间,最好使用录制时间的50%--150%模式
示例:
lr_think_time(16);
设置不同的模式:
点击该按钮
(2)lr_rendvious,集合点,所有运行用户到达集合点后再执行后续操作
示例:
lr_rendezvous("book_tickets");
设置方式:
六、事务
(1)统计某些操作请求响应时间
(2)258原则
(3)事务注意事项
①事务是成对出现的,即有开始有结束
②事务名称要一致
③事务里不能有思考时间、集合点
④集合点后边不能有思考时间
设置:
七、迭代:循环action函数
八、步长:action之间间隔的时长
fixed是固定时间,random是等待一个随机时间进行迭代
九、检查点函数
(1)web_find是在页面进行查找,web_reg_find是在源码中获取的
(2)web_reg_find效率高
(3)web_find、web_image_check都要插入在请求函数的后面,并且需要设置启动检查项。web_reg_find插入在请求函数的前面
(4)web_reg_find返回0不代表成功
(5)web_find只能用于在基于html模式录制的脚本中,web_reg_find没有此限制
如果没有将检查点录制出来,可手动插入,插入方法:
①右键脚本空白处,选择
②在弹出的页面中选择想插入的函数
③以插入 web_image_check为例
在弹出的对话框中选择合适的方法,右键查看被测网页的源代码,选择图片alt属性或src属性值填入即可。
十、录制脚本原则
(1)充分考虑脚本的执行效率,性能测试关注的是如何模拟用户的真实行为,用于测试的脚本应该接近于用户的真实操作
(2)录制重要的用户业务,VuGen中录制常用的使用频率较高的业务进行测试
(3)选择你所需要的进行录制,如果用户有些操作对于用户所关注的事务没有什么影响,那么可以不进行录制