loadrunner 常用函数和用法
一、添加事务
lr_start_transaction(“事务名称”);
lr_end_transaction(“事务名称”,LR_AUTO);
添加事务可以在查看报告中查看事务更加清晰,能看到响应时间等具体数据
用法:
1、有开始事务就一定有结束事务
2、开始事务和结束事务的名称必须一致
举例:
lr_start_transaction(“login”);
web_submit_data(“login.pl”,
“Action=http://127.0.0.1:1080/cgi-bin/login.pl”,
“Method=POST”,
“RecContentType=text/html”,
“Referer=http://127.0.0.1:1080/cgi-bin/nav.pl?in=home”,
“Snapshot=t19.inf”,
“Mode=HTML”,
ITEMDATA,
“Name=userSession”, “Value={session}”, ENDITEM,
“Name=username”, “Value=jojo”, ENDITEM,
“Name=password”, “Value=bean”, ENDITEM,
“Name=JSFormSubmit”, “Value=on”, ENDITEM,
“Name=login.x”, “Value=53”, ENDITEM,
“Name=login.y”, “Value=14”, ENDITEM,
LAST);
web_set_sockets_option(“SSL_VERSION”, “TLS1.1”);
lr_end_transaction(“login”,LR_AUTO);
这是自带webtour的一个登陆事务,通过录制脚本实现
二、添加集合点
lr_rendezvous(“这里是集合点名称”);
用来模仿同时执行一个事务,比如模仿500个人同时提交数据
三、参数化
参数化是指每次回放时提交不同的用户,比如不同的用户同时登陆一个系统
用loadrunner自带的webtour飞机订票系统举例:
1、录制脚本后,选择要参数化的参数,右键,使用参数替换–新建参数列表
2、在parameter中输入参数列表的名字,保存后,再替换到下面的参数中,用{ }扩上,如下图
3、在菜单栏中选择design-parameter-parameter list中,左侧一栏能看到已有的参数列表,选择已有的参数列表
按照上图所示,点击edit with notepad用记事本打开,编辑参数(第一行是参数列表的名,请不要修改)每行一个参数
这样参数化设计完成,在参数列表中还可以设计参数迭代的方式,依次、随机等等,这里不做介绍了
四、关联
关联用于服务器每次提交数据时可能会传输一个动态的辨识吗,使用这个操作每次把这个传输给服务器,常见的如session id
关联分为手动关联和自动关联,这里只讲手动关联
还是以webtour为例子(前4行是关联代码)
web_reg_save_param("session",
"LB=name=\"userSession\" value=\"",
"RB=\"/>",
LAST);
web_url("WebTours",
"URL=http://127.0.0.1:1080/WebTours",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t18.inf",
"Mode=HTML",
LAST);
lr_think_time(22);
lr_start_transaction("login");
web_submit_data("login.pl",
"Action=http://127.0.0.1:1080/cgi-bin/login.pl",
"Method=POST",
"RecContentType=text/html",
"Referer=http://127.0.0.1:1080/cgi-bin/nav.pl?in=home",
"Snapshot=t19.inf",
"Mode=HTML",
ITEMDATA,
"Name=userSession", "Value={session}", ENDITEM,
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
"Name=JSFormSubmit", "Value=on", ENDITEM,
"Name=login.x", "Value=53", ENDITEM,
"Name=login.y", "Value=14", ENDITEM,
LAST);
web_set_sockets_option("SSL_VERSION", "TLS1.1");
lr_end_transaction("login",LR_AUTO);
具体步骤请参考这篇博客
https://www.cnblogs.com/helenMemery/p/6291863.html
原理就是在服务器请求中搜一下这串session ,找到这段代码后,用关联函数写出它的左右边界值,从而在服务器中读到这串值
五、检查点
检查点用于在脚本执行后,是否能够读到这串文本,来判断脚本是否正常执行,
web_reg_find(“text=thank you”,
LAST);
比如下面的一小段代码,当在服务器中返回“thank you "这样的文本时,说明脚本正常执行,否则会在log中报错