1459人阅读
loadrunner(2)
LoadRunner11录制订WebTours的脚本时,选择的协议是Web(HTTP/HTML)碰到了时间选择按钮不能加载的情况,卡在flights页面上不动了;在单独打开IE时,到flights页面会弹出时间控件程序运行的安全警告,允许后成功加载。
日历功能是页面上的applet(即java 小程序)实现的,后来录制选择的协议是:Java Over HTTP。
选择的步骤是:New Single Protocol Script-&Category-&java-&Java Over HTTP。
注:回放时报MWAR-22986错误可能是当前的LoadRunner版本不支持JDK版本。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:10212次
排名:千里之外
原创:10篇
转载:10篇
(5)(4)(1)(1)(2)(2)(2)(1)(3)(1)
(window.slotbydup = window.slotbydup || []).push({
id: '4740881',
container: s,
size: '200,200',
display: 'inlay-fix'Posts - 282,
Articles - 1,
Comments - 2917
大人不华,君子务实。
21:55 by 虫师, ... 阅读,
Loadrunner的提供人脚本的录制功能,对于初学者来说,这大大的降低了编写脚本的门槛,提供两种录制脚本的方式:Html_based&script和Url-based&script&,初学者疑惑这两种方式有什么不同?&在这里我们来做个简单分析。
下面我们来分别通过两种方式来录制百度首页,对比一下他们之间有什么不同。
HTML方式的脚本:
web_url("",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t3.inf",
"Mode=HTML",
"Url=/r/www/img/i-1.0.0.png", ENDITEM,
"Url=/r/www/img/bg-1.0.0.gif", ENDITEM,
"Url=/favicon.ico", "Referer=", ENDITEM,
"Url=/su?wd=&cb=window.bdsug.sugPreRequest&sid=45_1788&t=5", ENDITEM,
"Url=/su?wd=%E8%99%AB%E5%B8%88&p=3&cb=window.bdsug.sug&sid=45_1788&t=6", ENDITEM,
"Url=/su?wd=%E8%99%AB%E5%B8%88%20&p=3&cb=window.bdsug.sug&sid=45_1788&t=9", ENDITEM,
"Url=/su?wd=%E8%99%AB%E5%B8%88%20%E5%8D%9A%E5%AE%A2%E5%9B%AD&p=3&cb=window.bdsug.sug&sid=45_1788&t=6", ENDITEM,
URL方式的脚本:
web_url("",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t67.inf",
"Mode=HTTP",
web_concurrent_start(NULL);
web_url("shouye_b066bd2cbaeda86d74448.gif",
"URL=/img/shouye_b066bd2cbaeda86d74448.gif",
"Resource=1",
"RecContentType=image/gif",
"Referer=/",
"Snapshot=t68.inf",
web_url("gs.gif",
"URL=/cache/global/img/gs.gif",
"Resource=1",
"RecContentType=image/gif",
"Referer=/",
"Snapshot=t69.inf",
web_url("tangram-1.3.4c1.0.js",
"URL=/r/www/cache/global/js/tangram-1.3.4c1.0.js",
"Resource=1",
"RecContentType=application/javascript",
"Referer=/",
"Snapshot=t71.inf",
web_url("home-2.5.js",
"URL=/r/www/cache/global/js/home-2.5.js",
"Resource=1",
"RecContentType=application/javascript",
"Referer=/",
"Snapshot=t72.inf",
web_url("u-1.3.4.js",
"URL=/r/www/cache/user/js/u-1.3.4.js",
"Resource=1",
"RecContentType=application/javascript",
"Referer=/",
"Snapshot=t73.inf",
web_concurrent_end(NULL);
web_url("i-1.0.0.png",
"URL=/r/www/img/i-1.0.0.png",
"Resource=1",
"RecContentType=image/png",
"Referer=/",
"Snapshot=t70.inf",
web_concurrent_start(NULL);
web_url("su",
"URL=/su?wd=&cb=window.bdsug.sugPreRequest&sid=44_1788&t=1",
"Resource=1",
"RecContentType=baiduapp/json",
"Referer=/",
"Snapshot=t74.inf",
web_url("favicon.ico",
"URL=/favicon.ico",
"Resource=1",
"RecContentType=image/x-icon",
"Referer=",
"Snapshot=t75.inf",
web_concurrent_end(NULL);
&&&&&&Html_based&script是loadrunner的缺省模式,即默认模式,也就是通常说的高层次模式,一般优先选择这种模式这种模式录制的脚本相对简短,便于阅读。它把类属一个页面的请求放在一个web_url中。
Url-based&script即通常所说的低层次录制模式,这种模式录制的脚本相对长,不利于阅读,但脚本更直观,它把客户端向服务器端发送的每一个请求都放在一个单独的web_url中,即一个请求对应一个web_url,页面和图片分别生成对应的web_url,相对Html_based&script模式把类属一个页面的请求放在一个web_url中的方式,Url-based&script模式的脚本更直观。
如何从脚本辨别使用哪种模式录制?
我们可以从脚本web_url中mode的值区分,Html_based&script模式下mode的值为html,Url-based&script模式下mode的值为http。还有Html_based&script模式记录为web_submit_form,而Url-based&script模式记录为web_submit_data。
两种录制方式优点对比:
(一)HTML&录制
优点:减少了捕获动态值的需要。
(1)资源从内存中取出且在回放时下载。因此,脚本比其他的录制方式更小且更容易阅读。
(2)由于只有较少的硬编码脚本,因此只有较少的动态数值需要关联。
(3)可以插入图片检查之类的语句以检查结果是否正确。
(4)因为模式回放时需要积极地解析返回的信息因此它可能会比其他录制模式更加占用资源。然而模式有相当大的改善使得差异最小化且微不足道。
(5)HMTL录制级别会为每一个HTML用户动作产生一个单独的步骤。而且HTML方式产生的脚本非常简洁和直述,易于阅读。(二)URL&录制
优点:脚本具有灵活性和可量测性。
(1)脚本回放过程中,不再搜索内存和Cache。
(2)脚本更具可扩展性。支持页面上的Java&Applets和ActiveX对象。
(3)URL录制级别把对服务器每个对象的请求,都录制成一个单独的请求。对业务过程有更好的控制。
&如何选择两种模式?
1、基于浏览器的应用程序推荐使用。
2、不是基于浏览器的应用程序推荐使用。
3、如果基于浏览器的应用程序中包含了,applet等并且该脚本向服务器产生了请求,比如的分页按钮等,也要使用方式录制。
4、基于浏览器的应用程序中使用了安全协议,使用方式录制。
5、录制过程中不要使用浏览器的后退功能,对其支持不太好。
Tips:脚本录制过程中,可以根据需要在HTML级别和URL级别之间灵活地切换,以获得最佳的效果。&