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、录制脚本后,选择要参数化的参数,右键,使用参数替换–新建参数列表
loadrunner 常用函数和用法
2、在parameter中输入参数列表的名字,保存后,再替换到下面的参数中,用{ }扩上,如下图
loadrunner 常用函数和用法3、在菜单栏中选择design-parameter-parameter list中,左侧一栏能看到已有的参数列表,选择已有的参数列表
loadrunner 常用函数和用法按照上图所示,点击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中报错