LoadRunner11系列-初始LR11

一、两种录制模式的解析

1、HTML-based script和URL-based script的区别

LoadRunner11系列-初始LR11_第1张图片

可以分别使用这两种方式录制一下百度首页,查看其录制的结果

  • HTML-based script:这种方式录制的代码只生成了一个函数,所有请求全放在这个函数里面,一个操作(可能包含多个请求)会生成一个函数,这个方式看起来比较简洁。
  • URL-based script:这种方式会生成很多函数,它将每个请求都单独生成一个函数,这种方式更接近请求-响应的本质

2、HTML-based script

LoadRunner11系列-初始LR11_第2张图片

  • A script describing user actions(e.g. web_link,web_submit_form)
  • A script containing explicit URLs only(e.g. web_url, web_submit_data)

同上面一样,我们可以通过录制同一场景的方法直接来对比这两种方式的区别。下面例子使用LR自带的程序

(1)描述用户操作的脚本(例如,web_link、web_submit_form)

Action()
{

	web_url("WebTours", 
		"URL=http://127.0.0.1:1080/WebTours/", 
		"Resource=0", 
		"RecContentType=text/html", 
		"Referer=", 
		"Snapshot=t1.inf", 
		"Mode=HTML", 
		LAST);

	lr_think_time(8);

	web_submit_form("login.pl", 
		"Snapshot=t2.inf", 
		ITEMDATA, 
		"Name=username", "Value=jojo", ENDITEM, 
		"Name=password", "Value=bean", ENDITEM, 
		"Name=login.x", "Value=47", ENDITEM, 
		"Name=login.y", "Value=5", ENDITEM, 
		LAST);

	return 0;
}

注释掉web_url函数,运行的话,就会报错

LoadRunner11系列-初始LR11_第3张图片

(1)包含明确的url脚本(例如,web_url、web_submit_data)

Action()
{

	web_url("WebTours", 
		"URL=http://127.0.0.1:1080/WebTours/", 
		"TargetFrame=", 
		"Resource=0", 
		"RecContentType=text/html", 
		"Referer=", 
		"Snapshot=t3.inf", 
		"Mode=HTML", 
		LAST);

	lr_think_time(9);

	web_submit_data("login.pl", 
		"Action=http://127.0.0.1:1080/WebTours/login.pl", 
		"Method=POST", 
		"TargetFrame=body", 
		"RecContentType=text/html", 
		"Referer=http://127.0.0.1:1080/WebTours/nav.pl?in=home", 
		"Snapshot=t4.inf", 
		"Mode=HTML", 
		ITEMDATA, 
		"Name=userSession", "Value=125846.121506683ztHDcAQpiHfDiiDQpcfQcf", ENDITEM, 
		"Name=username", "Value=jojo", ENDITEM, 
		"Name=password", "Value=bean", ENDITEM, 
		"Name=JSFormSubmit", "Value=off", ENDITEM, 
		"Name=login.x", "Value=51", ENDITEM, 
		"Name=login.y", "Value=16", ENDITEM, 
		LAST);

	return 0;
}

注释掉web_url函数之后运行,还是可以运行成功。

LoadRunner11系列-初始LR11_第4张图片

总结:

  • web_submit_from:上下文相关的,依赖上下文才能提交,比较符合人们的操作习惯
  • web_submit_data:上下文不相关,每个函数都指定了具体的URL地址,可以直接提交成功,如果只关注协议,不需要关注页面,可使用这种方式录制。

选择哪种方式录制,有以下参考原则:

(1)基于浏览器的应用程序推荐使用HTML-based script

(2)不是基于浏览器的应用程序推荐使用URL-based script

(3)如果基于浏览器的应用程序中包含了JavaScript并且该脚本向服务器产生了请求,比如datagrid的分页按钮等,flash等,也要使用URL-based方式录制

(4)基于浏览器的应用程序中使用了HTTPS安全协议,使用URL-based方式录制

 

 

 

 

你可能感兴趣的:(性能测试,LoadRunner)