LR8.0录制不了max脚本录制

电脑是XP系统的,用loadrunner录制脚本时,IE打不开_百度知道
电脑是XP系统的,用loadrunner录制脚本时,IE打不开
安装的是loadrunner9.0,IE8
提问者采纳
一:LR版本和IE版本兼容性问题,这个问题是我们安装环境时不注意,导致LR无法录制。LR8.0最高支持IE6.LR8.1最高支持IE6.LR9.1最高支持IE7.LR9.5最高支持IE7.LR11.0最高支持IE8,LR11是能在Win 7环境下运行,除LR11以上版本不能再Win 7环境下运行。 二:1、IE浏览器&&工具&&Internet 选项&&高级&&把&启用第三方浏览器扩展&前面的勾去掉,然后重启2、若LR之前使用可打开IE,那么可能是后续系统软件的安装,可能会更改到LR的注册表,使得IE物理路径和LR配置文件记录路径不一致,在录制界面重新选择IE物理路径3、当前环境中安装几个浏览器,由于目前LR只能使用IE浏览器,设置IE为系统默认浏览器,并选择IE物理路径,若还不行,可把当前环境下浏览器卸载。 从你的环境来说LR9.0是无法支持IE8,重装IE版本或LR版本
提问者评价
其他类似问题
lr8.1低版本不支持ie7及以上版本的 或者试试internet选项-&高级取消钩选&启用第三方浏览器扩展*&
取消钩选&启用第三方浏览器扩展*& 这个办法也试了的,还是不行。。
按默认排序
其他1条回答
loadrunner9.0不支持IE8 你换个IE试试。
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁8219人阅读
一、Error -27727: Step download timeout (120 seconds)has expired when downloading resource(s). Set the“Resource Page Timeout
is a Warning” Run-Time Setting to Yes/No to have this message as a warning/error, respectively
处理方法:
Run-Time Setting ------ Internet Protocol ------ Preferences ------Option ------ Step download timeout(sec)改为32000
A、应用服务参数设置太大导致服务器的瓶颈
  B、页面中图片太多
  C、在程序处理表的时候检查字段太大或多
二、错误现象:Action.c(16): Error -27728: Step download timeout (120 seconds) has expired when downloading
non-resource(s)。
错误分析:对于HTTP协议,默认的超时时间是120秒(可以在LoadRunner中修改),客户端发送一个请求到服务器端,如果超过120秒服务器端还没有返回结果,则出现超时错误。
解决办法:首先在运行环境中对超时进行设置,默认的超时时间可以设置长一些,再设置多次迭代运行,如果还有超时现象,需要在&Runtime Setting&&&Internet Protocol:Preferences&&&Advanced&区域中设置一个&winlnet replay instead of sockets&选项,再回放是否成功。
三、Action.c(7): Error -27791: Server“192.168.1.77″ has shut down the connection prematurely
  解决方案如下:
  1、应用服务器死掉。小用户时程序上的问题,程序上处理数据库的问题
  2、应用服务没有死。应用服务参数设置问题。例如:在许多客户端weblogic应用服务器被拒绝,而在服
  务器端没有错误显示,则有可能是weblogic中的server元素的acceptbacklog属性值设得过低。如果连接
  时收到connection refused消息,说明应提高该值,每次增加25%。
  3、数据库的连接
  在应用服务的性能参数可能太小了,数据库启动的最大连接数(跟硬件的内存有关)
  4、有时关闭卡巴斯基也会解决如上问题
  1)观察response time 是否 超出默认的120秒
  2)检查服务器日志是否有异常以及负载是否过高
  3) web_set_timeout 设置更长的超时超时上限
  web.set_timeout(”CONNECT”, “360″);
  web.set_timeout(”RECEIVE”, “360″);
  web.set_timeout(”STEP”, “360″))观察response time 是否 超出默认的120秒这个问题,要详细分析了。
  应该不会是LR自身造成的问题。
  把时间调长,就是为了,定位问题在什么地方,而不是为了绕过这个错误的出现。
四、Action.c(38): Error -27492: &HttpSendRequest& failed, Windows error code=12002 and
retry limit (0) exceeded for URL
在runtime setting中的preferences- -&options--&http-request
connect timeout(sec)的值设为999。
五、错误现象:Action.c(81):Continuing after Error -27498: Timed out while processing URL=http://172.18.20.70:7001/workflow/bjtel/leasedline/ querystat/ subOrderQuery.do
错误分析:这种错误常常是因为并发压力过大,服务器端太繁忙,无法及时响应客户端的请求而造成的,所以这个错误是正常现象,是压力过大造成的。
如果压力很小就出现这个问题,可能是脚本某个地方有错误,要仔细查看脚本,提示的错误信息会定位某个具体问题发生的位置。
解决办法:例如上面的错误现象问题定位在某个URL上,需要再次运行一下场景,同时在其他机器上访问此URL。如果不能访问或时间过长,可能是服务器或者此应用不能支撑如此之大的负载。分析一下服务器,最好对其性能进行优化。
如果再次运行场景后还有超时现象,就要在各种图形中分析一下原因,例如可以查看是否服务器、DNS、网络等方面存在问题。
最后,增加一下运行时的超时设置,在&Run-Time Settings&&&Internet Protocol:Preferences&中,单击&options&,增加&HTTP-request connect timeout& 或者&HTTP-request receive&的值。
六、Action.c(6): Error -26612: HTTP Status-Code=500 (Internal Server Error) forhttp://192.168.0.8:10001/logonConsole.jsessionid={JSESSIONID2}
造成HTTP-500错误,有朋友告诉我如下几个可能:
1、运行的用户数过多,对服务器造成的压力过大,服务器无法响应,则报HTTP500错误。减小用户数或者场景持续时间,问题得到解决。
2、该做关联的地方没有去做关联,则报HTTP500错误。进行手工或者自动关联,问题得到解决。
3、录制时请求的页面、图片等,在回放的时候服务器找不到,则报HTTP500错误,若该页面无关紧要,则可以在脚本中注释掉,问题将会得到解决。例如:有验证码的情况下,尽管测试时已经屏蔽了,但是录制的时候提交了请求,但回放的时候不存在响应。
4、参数化时的取值有问题,则报HTTP500错误。可将参数化列表中的数值,拿到实际应用系统中进行测试,可排除问题。
5、更换了应用服务器(中间件的更换,如tomcat、websphere、jboss等),还是利用原先录制的脚本去运行,则很可能报HTTP500错误。因为各种应用服务器处理的机制不一样,所录制的脚本也不一样,解决办法只有重新录制脚本。
6、Windows xp2 与ISS组件不兼容,则有可能导致HTTP500错误。对ISS组件进行调整后问题解决。
7、系统开发程序写的有问题,则报HTTP500错误。例如有些指针问题没有处理好的,有空指针情况的存在。修改程序后问题解决。
查找后台发现报了很多0ra-01000错误,这是oracle达到最大游标参数值,google了下,最大原因可能是JDBC连接没关闭。最后查找weblogic连接池出了问题,很多连接没关闭。
七、Action.c(15):
错误 -27496: 内部错误(呼叫客户服务): _eStat (7) != LRW_ITEM_STAT_ENUM_UNHANDLED for HandledTask at 048E180C
八、Action.c(56): Error -27995: Requested link (&Text=计划管理&) not found&&[MsgId: MERR-27995]
方法:在IE中的工具—&Internet选项—&高级—&HTML设置中选择第二个脚本类型.
九、错误 -27279:内部错误(呼叫客户服务):Report initialization failed , error code = - [MsgId : MERR-27279 ]
建议重装一下LR.
这种问题有可能和你安装有关.dll文件出错不是说写的程序就能修改的.
十、设置了持续时间,出现错误为:27796, Failed to connect to server 'hostname';port_ld': 'reason'.10048.(凭记忆写的,不知道写错了没有)
成功的解决方法:
在注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters里,有如下两个键值:
TcpTimedWaitDelay
MaxUserPort
1,这里的TcpTimedWaitDelay默认值应该中是30s,所以这里,把这个值调小为5s(按需要调整)。
2,也可以把MaxUserPort调大(如果这个值不是最大值的话)。
十一、如何解决LodRunner中报错关于Error -10489 : Exception was raised when calling per-thread-terminate
  在用Loadrunner实施性能测试时,采用Goal模式加压,存在如果持续长时加压时LoadRunner的Controller会报 Error -10489 : Exception was raised when calling per-thread-terminate function错误;
  问题产生原因:
&&&& Unlike the earlier Windows versions, Windows 2000 and Windows XP have the default environment set to
C:\Document and Settings\&user-name&\Local Settings\Temp instead of C:\Windows\temp. This long path with a space can cause several problems for LoadRunner. To resolve the issue, change to a directory without empty spaces.
 &解决方法:
&&&&&在C盘(或是其它盘均可以)新建TEMP文件夹(为了后续设置临时文件准备)
&&&&&右键"我的电脑"-&高级-&环境变量-&编辑修改TEMP变量目录,指身上面新建的目录,如我的指向C:\TEMP-&保存即可^_^
1&&&&&问题描述Connection reset by peer. Error code : 10054
设置下载等的超时
用VuGen录制脚本后,回放或者加压的时候,可能会出现错误信息“Action.c(65): Error : socket6 - Connection reset by peer. Error code : 10054”
这是因为,下载的速度慢,导致超时,所以,需要调整一下超时时间,方法如下:
在Run-time setting窗口中的‘Internet Protocol’-‘Preferences’设置set
advanced options(设置高级选项),,重新设置一下“HTTP-request connect timeout(sec)”
2&&&&问题描述:
Error:Failed to connect to server“192.168.2.192”:[10060]Connection
Error:timed out Error:Server“192.168.2.192”has shut down the connection prematurely
1&&&&&应用访问死掉
小用户时:程序上的问题。程序上存在数据库的问题
2&&&&&应用服务没有死
应用服务参数设置问题
在许多客户端连接Weblogic应用服务器被拒绝,而在服务器端没有错误显示,则有可能是Weblogic中的server元素的AcceptBacklog属性值设得过低。如果连接时收到connection
refused消息,说明应提高该值,每次增加25%
Java连接池的大小设置,或JVM的设置等
3&&&&&数据库的连接
在应用服务的性能参数可能太小了
数据库启动的最大连接数(跟硬件的内存有关)
3&&&&&问题描述
Error:Page download timeout(120seconds)has expired
分析原因:
应用服务参数设置太大导致服务器的瓶颈
页面中图片太多
在程序处理表的时候检查字段太多
十二、LoadRunner脚本中出现乱码:在录制Web协议脚本时出现中文乱码,在回放脚本时会使回放停止在乱码位置,脚本无法运行。
错误现象:某个链接或者图片名称为中文乱码,脚本运行无法通过。
错误分析:脚本录制可能采用的是URL-based script方式,如果程序定义的字符集合采用的是国际标准,脚本就会出现乱码现象。
解决办法:重新录制脚本,在录制脚本前,打开录制选项配置对话框进行设置,在&Recording Options&的&Advanced&选项里先将&Surport Charset&选中,然后选中支持&UTF-8&的选项。
十三、LoadRunner HTTP服务器状态代码:在录制Web协议脚本回放脚本的过程中,会出现HTTP服务器状态代码,例如常见的页面-404错误提示、-500错误提示。
错误现象1:-404 Not Found服务器没有找到与请求URI相符的资源,但还可以继续运行直到结束。
错误分析:此处与请求URI相符的资源在录制脚本时已经被提交过一次,回放时不可再重复提交同样的资源,而需要更改提交资源的内容,每次回放一次脚本都要改变提交的数据,保证模拟实际环境,造成一定的负载压力。
解决办法:在出现错误的位置进行脚本关联,在必要时插入相应的函数。
错误现象2:-500 Internal Server Error服务器内部错误,脚本运行停止。
错误分析:服务器碰到了意外情况,使其无法继续回应请求。
解决办法:出现此错误是致命的,说明问题很严重,需要从问题的出现位置进行检查,此时需要此程序的开发人员配合来解决,而且产生的原因根据实际情况来定,测试人员无法单独解决问题,而且应该尽快解决,以便于后面的测试。
十四、LoadRunner请求无法找到:在录制Web协议脚本回放脚本的过程中,会出现请求无法找到的现象,而导致脚本运行停止。
错误现象:Action.c(41): Error -27979: Requested form not found [MsgId: MERR-27979]
Action.c(41): web_submit_form highest severity level was &ERROR&,0 body bytes, 0 header bytes& [MsgId: MMSG-27178]&
这时在tree view中看不到此组件的相关URL。
错误分析:所选择的录制脚本模式不正确,通常情况下,基于浏览器的Web应用会使用&HTML-based script&模式来录制脚本;而没有基于浏览器的Web应用、Web应用中包含了与服务器进行交互的Java Applet、基于浏览器的应用中包含了向服务器进行通信的JavaScript/VBScript代码、基于浏览器的应用中使用HTTPS安全协议,这 时则使用&URL-based
script&模式进行录制。
解决办法:打开录制选项配置对话框进行设置,在&Recording Options&的&Internet Protocol&选项里的&Recording&中选择&Recording Level&为&HTML-based script&,单击&HTML Advanced&,选择&Script Type&为&A script containing explicit&。然后再选择使用&URL-based
script&模式来录制脚本。
十五、LoadRunner不执行检查方法:在录制Web协议脚本中添加了检查方法Web_find,但是在脚本回放的过程中并没有执行。
错误现象:在脚本中插入函数Web_find,在脚本中设置文本以及图像的检查点,但是在回放过程中并没有对设置的检查点进行检查,即Web_find失效。
错误分析:由于检查功能会消耗一定的资源,因此LoadRunner默认关闭了对文本以及图像的检查,所以在设置检查点后,需要开启检查功能。
解决办法:打开运行环境设置对话框进行设置,在&Run-time Settings&的&Internet Protocol&选项里的&Perference&中勾选&Check&下的&Enable Image and text check&选项。
十六、LoadRunner回放Web Services协议脚本错误:LoadRunner 8.0版本在录制Web Services协议的脚本时正常,但在回放时会出现错误,提示停止脚本运行。
错误现象:利用LoadRunner 8.0版本来录制Web Services协议的脚本没有任何错误提示,回放脚本时会出现如下错误提示&Error:server returned an incorrectly formatted SOAP response&。
错误分析:出现此错误的原因是LoadRunner8.0在录制Web Services协议的脚本时存在一个缺陷:如果服务器的操作系统是中文的,VuGen会自动将WSDL文件的头改为&?xml version=&1.0&encoding=&zh_cn& ?&,所以才会有此错误提示。
解决办法:下载两个补丁,分别为&LR80WebServicesFPI_setup.exe&和&lrunner_web_ services_patch_1.exe&安装上即可。
十七、业务:进入借款单(显示借款单列表),新建借款单,新建后显示借款单列表(新建的借款单在此列表中有显示)
我是录制的脚本,可运行时,提示 Action.c(112):错误
-26627:对于“”,HTTP状态代码=404
(Not Found)
1.手动正常未必就真正常,LR加压的时候可能连接数占满了,所以出404
2.还有一种情况,脚本里有检查语句,叫什么lr_check还是什么的,就是一个脚本内部检查是否有该资源用的,不见着他我拼不出来,如果有,注释掉看看
十八、Action.c(38): Error -27492: &HttpSendRequest& failed, Windows error code=12002
and retry limit (0) exceeded for URL
在runtime setting中的preferences- -&options--&http-request
connect timeout(sec)的值设为999
&&Runtime Setting&Preferences&Advanced区域中设置一个winlnet replay instead of sockets选项(不勾选此项报
Error -27727)
十九、错误 -27279:内部错误(呼叫客户服务):Report
initialization failed , error code = - [MsgId : MERR-27279 ]
警告:扩展 LrXml.dll报告在调用函数
ExtPerThreadInitialize时出现错误 -1
错误: Vuser初始化扩展 LrXml.dll失败。
Vuser Terminated.
建议你重装一下LR.
这种问题有可能和你安装有关.dll文件出错不是说写的程序就能修改的.
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:47828次
排名:千里之外
原创:19篇
转载:30篇
(1)(1)(1)(2)(9)(3)(5)(8)(12)(1)(3)(4)LoadRunner&不能启动&IE&浏览器&解决方法
LoadRunner
不能启动 IE 浏览器 解决方法
解决方法一:
一台主机上安装多个浏览器时,LoadRunner录制脚本会经常遇到不能打开浏览器的情形,可以用下面的方法来解决。
启动IE,进入Internet选线,切到高级,去掉“启用第三方浏览器扩展(需要重启动)”的勾选,然后再次运行VuGen即可。通常安装Firfox等浏览器后,都会勾选这个选项,导致不能正常录制。因此建议LoadRunner的相关主机上保持一个干净的测试环境。
解决方法二:
由于lr本身的稳定性,再加上在系统中安装软件时有可能会将其注册表修改掉,尤其是安装dotnet2005的时候,导致lr录制脚本时不能弹出IE页面。
其实单就这个问题来看,主要是LR的注册信息被修改,无法找到IE路径。如何重新注册LR呢?在lr的安装目录(例如D:\Program
Files\Mercury\LoadRunner\bin)下,单击register_vugen.bat文件,注册信息被重新改写了。嘿嘿,不过别忘了最后一步。重新启动一下,好了。呵呵,这个方法对大多数无法弹出IE页面的问题都能解决,但也不排除例外呀。
&解决方法三:
&退出360杀毒软件,重新录制,问题解决。
&参考文章:
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
2、解决办法,把IE8.0浏览器设置为默认浏览器就可以了,在浏览器工具→IE选项→Internet属性对话框,选择高级,然后单击“重置”,重新启动浏览器就可以了。如下图所示:
阅读(3563)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_',
blogTitle:'解决LR11.0+Win7+IE8.0启动不了浏览器',
blogAbstract:'1、启动LR开始录制脚本,出现如下图所示:\r\n\r\n2、解决办法,把IE8.0浏览器设置为默认浏览器就可以了,在浏览器工具→IE选项→Internet属性对话框,选择高级,然后单击“重置”,重新启动浏览器就可以了。如下图所示:\r\n\r\n&',
blogTag:'ie8.0,lr11.0,浏览器,win7,启动',
blogUrl:'blog/static/1',
isPublished:1,
istop:false,
modifyTime:4,
publishTime:6,
permalink:'blog/static/1',
commentCount:3,
mainCommentCount:3,
recommendCount:1,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'1',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}1)可以直接确认
这种情况下你可以通过你的测试常识直接判读系统使用了什么样的协议,比如前面说的Web系统使用了HTTP./HTML协议,Ftp服务使用了FTP协议等;
2)通过研发人员了解被测系统使用了什么样的协议
如果通过你的判断不能确定使用了什么样的协议这个时候,你可以跟研发人员进行沟通,确认他在开发的过程中使用了什么样的协议。
3)使用常用的数据监听工具进行数据包分析
有的时候可能你的研发人员也不能确定他在开发过程中使用了什么协议,这个确实是有可能的特别是现在的研发人员特别喜欢用别人的插件,或者开发环境封装的很好,导致他们没有开发底层的协议栈,这个时候就需要你自己去判断,自己判断过程中可以借助协议分析工具,常用的协议分析工具如:sniffer Pro,ethreal等;这些工具可以通过抓取数据然后对数据包进行分析的方法分析出现在常用的协议。能力还是相当的强的。
4)万能协议Winsocket协议
如果上述方法都不行,但是你还想用LR完成你的性能测试,没有办法这个时候可以拿出这个Winsocket协议进行脚本的开发,这个协议只要是在Windows上的通信的软件都可以将脚本开发出来,但是脚本调试的难度相当到,需要看大量的16进制的数据,并且有的时候还需要复杂的管理,本人建议能不用,最好不用。
5)另外可以通过以下文章对协议选择有更深入的了解
LoadRunner的协议选择
LR支持多种协议,请大家一定要注意,这个地方协议指的是你的Client端通过什么协议访问的Server,Client一般是面向最终使用者的,Server是第一层Server端,因为现在的体系架构中经常Server层也分多个层次,什么应用层,什么数据层等等,LR只管Client如何访问第一层Server.
特别要注意某些应用,例如一个Web系统,这个系统是通过ActiveX控件来访问后台的,IE只是一个容器,而ActiveX控件访问后台是通过COM/DCOM协议的,这种情况就不能使用Web协议,否则你什么也录制不到,所以,LR工程师一定要了解应用程序的架构和使用的技术。
谈谈多协议LR是支持在一个脚本里面使用多协议的,不过这个多协议是有一定的限制的,我有一个LR7.6上哪些协议支持多协议,LR8.0是不是取消了这些限制我不清楚。象HTTPS,一般来讲一定要选择多协议,但在选择具体协议的时候一定只选Web协议,这时候才能作那个端口映射。
谈谈Web协议中Option Web协议里面有一些Option,具体我记不清楚了,但有一个地方很重要:就是选择URL方式还是HTM方式录制,这里有一些原则a.
尽量使用HTM方式录制b.如果使用了Javascrīpt,并且javascrīpt里面与后台有交互,那一定要使用URL方式,例如javascrīpt用于判断用户名和密码是否正确(与后台一定会有交互),那么就要使用URL方式录制;但如果Javascipt只是判断用户名或密码的格式,那一般不会与后台发生交互,就不需要使用URL方式。至于什么情况下一定要用URL方式,我曾经写过一个文档,但现在我不记得了不好意思。
谈谈并发点和结果检查很多人喜欢使用并发点和结果检查,我谈谈我自己的看法。第一我基本上从来不使用结果检查,压力测试的结果我一般是去后台检查存储层的数据是否正确的。LR只能检查协议层上的错误,但如果在大量并发用户的情况下使用返回结果检查例如reg_text_check,会极大的占用客户端的资源,我一般不这么作;至于并发点,我只有在客户强烈要求的情况下才会使用,否则基本不用
使用LoadRunner如何更好的选择协议
测试B/S系统选择Web(Http/Html)。
测试一个C/S系统要根据所用到的后台数据库来选择不同的协议:
后台数据库是sybase,则采用sybaseCTlib协议。
后台数据库是sql server,则使用MS sql server协议。
后台数据库是oracle 数据库,就使用oracle 2-tier协议。
没有数据库的c/s(ftp,smtp)系统,可以选择windowsSockets协议。
其他的ERP,EJB(需要ejbdetector.jar),选择相应的协议即可。
LoadRunner与Winsock协议
在讨论winsock解决方案之前,我们先讨论一下各种协议是如何工作。从前面的简介可以了解到很多的高级协议,例如FTP,HTTP协议等。以及所有基于window的应用(例如IE,WS-FTP)底层都是在Winsocket层上通信,因此任何高级协议的底层都是用Winsocket通信。
什么时候在LR中选择Winsocket协议呢?你要先了解LR是怎么样工作的:LR捕捉API请求然后再把它们回放。所以当你在创建LR
WEB脚本的时候,VUGEN捕捉从IE出去的所有的HTTP请求。除此之外lr还支持其他很多协议,例如Oracle,ODBC等。在选择不同协议录制脚本的时候,LR是依靠hooks捕捉正确的API请求。所以既然大部分网络协议都是架构在winsocket协议之上的,那对于lr不支持的协议,我们都可以在winsocket层上录制脚本。所以当找不到合适协议的时候,可以选择winsocket来录制。
录制WinSock协议脚本!
Lr录制新的虚拟用户脚本,选择winsock协议;
在web虚拟用户脚本中录制的是URL信息,所以VUGEN启动流览器并运行就可以了,但选择Winsocket录制的时候,可能会是各种形式的应用,并不简简单单就是浏览器,所以在开始的时候我们不需要指定应用的地址。
下面的例子我们选择winsock来录制web应用,正如上面说的我们开始要指定ie的地址。因为本来lr是支持http协议的,所以这个例子并无具体的意义,只是为了使例子简单。
winsock脚本典型代码:
lrs_create_socket(&socket0&,&UDP&,&LocalHost=&0&&,&RemoteHost=doors:2084&,LrsLastArg);
lrs_create_socket(&socket1&,&TCP&,&LocalHost=0&,&RemoteHost=www2。yahoo。com:80&,LrsLastArg);
lrs_send(&socket0&,&buf0&,LrsLastArg);
lrs_receive(&socket0&,&buf1&,LrsLastArg);
lrs_send(&socket1&,&buf2&,LrsLastArg);
lrs_send(&socket0&,&buf3&,LrsLastArg);
lrs_receive(&socket0&,&buf4&,LrsLastArg);
这是访问雅虎的一个应用,正如我们看到的,winsock先打开一个winsocket连接,然后收发包。我们发现录制的脚本中比web脚本(三个文件)多一个文件。
第四个文件是data.ws,它里面记载了在action里面收发所有包的内容。
下面是一个data.ws的例子。
recv buf1 1
&GET / HTTP/1。1\r\n&
&Accept: */*\r\n&
&Accept-Language: en-us\r\n&
&Accept-Encoding: gzip,deflate\r\n&
&User-Agent: Mozilla/4。0 ( MSIE 5。01; Windows NT 5。0)\r\n&
&Host: www。yahoo。com\r\n&
&Connection: Keep-Alive\r\n&
&Cookie: B=&5oj83bst12l6m&b=&2;& Y=&v=1&n=8lln5lmi3f8g1&l=6ef8c0d34b0/o&p=m2a2s&&
&qa4110004&r=3f&lg=us&intl= T=&z=4TVE6A4ZqE6A9dIIpt30。NQNTYGNDE3NTYwM081&&&
&a=AAE&sk=DAAEwinHlDtEm/&d=c2wBTWpFQk16WXdNakUzTkRneQFhAUFBRQF6egE0VFZFNkFn&
&V0E-; I=&i1=010g1q1uk2p2r494a4g4m4qg6t6u7a7f7&&
&g7k7n7o888f8k8p8q989c9f9i9k9l9n9qacanapb0b3bdbfbhblbqbrbuc0c1c4cgcmcscteie&
&jgr&ir=73\r\n&
recv buf4 1
recv buf5 2048
&HTTP/1。0 200 OK\r\n&
&Content-Length: 16030\r\n&
&Content-Type: text/html\r\n&
buf2包含了发给www。yahoo。com的包,buf5包含了从server收到的回应。正如看到的winsock录制的脚本并不像web脚本那样具有可读性,因为winsock是我们最后的选择。在buf序列号的后面是buf的字节数。例如5号buffer后面的2048就是表示收到了2048个帧。
注意:在很多buffer里面你会发现仅仅包含了一个“!”,这是一个网络常识,这个帧对于应用来说没有任何的作用,完全可以把这些桢清除掉,在data。ws清除这个帧是效果的,需要到action里把这些桢注释掉。譬如例子中收到和发出的buffer可以用//注释掉。这样可以使脚本运行得更快。下边的例子:buffers
和4 可以注释掉:
lrs_create_socket(&socket0&,&UDP&,&LocalHost=&0&&,&RemoteHost=doors:2084&,LrsLastArg);
lrs_create_socket(&socket1&,&TCP&,&LocalHost=0&,&RemoteHost=www2。yahoo。com:80&,LrsLastArg);
// lrs_send(&socket0&,&buf0&,LrsLastArg);
// lrs_receive(&socket0&,&buf1&,LrsLastArg);
lrs_send(&socket1&,&buf2&,LrsLastArg);
// lrs_send(&socket0&,&buf3&,LrsLastArg);
// lrs_receive(&socket0&,&buf4&,LrsLastArg);
lrs_receive(&socket1&,&buf5&,LrsLastArg);
lrs_send(&socket0&,&buf6&,LrsLastArg);
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:6292次
排名:千里之外
原创:17篇
转载:11篇
(4)(2)(6)(1)(3)(1)(2)(3)(3)(1)(2)}

我要回帖

更多关于 max脚本录制 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信