LR中错误解决方法

时间:2022-01-15 02:24:46

loadrunner脚本服务器weblogichttp服务器应用服务器

一、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.do;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 = -2147467259 [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 function

  在用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"安装上即可。

http://wenku.baidu.com/view/a576eb0a79563c1ec5da71c8.html

 

十七、业务:进入借款单(显示借款单列表),新建借款单,新建后显示借款单列表(新建的借款单在此列表中有显示)
我是录制的脚本,可运行时,提示 Action.c(112):错误 -26627:对于“http://192.168.1.105:8080/T3/fee/feeLoanList.action”,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 = -2147467259 [MsgId : MERR-27279 ]
警告:扩展 LrXml.dll报告在调用函数 ExtPerThreadInitialize时出现错误 -1
错误: Vuser初始化扩展 LrXml.dll失败。
Vuser Terminated.

建议你重装一下LR.
这种问题有可能和你安装有关.dll文件出错不是说写的程序就能修改的.


$$$$$$$LR报26612错误解决过程  标签: 26612  分类: Loadrunner 2009-04-10 17:16 这两天测试并发修改采购收货时,录制回放正确,运行脚本,集合点3个并发时,却老是出错

如下:

Action.c(30): Error -26612: HTTP Status-Code=500 (Internal Server Error) for http://192.168.100.88:88/Purchase/stockin_action.asp?Oper=Edt

解决过程:按Help提示在浏览器输入原地址,发现提示“请重新登陆系统”。

被此误导,偶以为是Session ID、或Cookie失效,于是尝试找关联,花了N多时间。可是脚本里确实不存在需要关联的地方呀,系统默认关联了。

与程序员沟通,证实此过程不会涉及到Session ID 或Cookie。那为什么?

因为集合点下一站就是修改的提交操作,于是查找web_submit_data-->定位查找Log文档

注意点:怎么找log文件

-->Controller-->Results-->Results Settings 查找本次log文件保存目录-->到该目录下查找log文件夹-->打开

惊喜的发现其中竟然有所有Vuser 的运行log。-->打开Error 查找报错的Vuser-->打开相应的log文件

查找error,然后偶发现了一段让偶热泪盈眶的话:

Action.c(30):     <p>Microsoft OLE DB Provider for ODBC Drivers</font> <font face="宋体" size=2>错误 '800040
Action.c(30):     05'</font>\n
Action.c(30):     <p>\n
Action.c(30):     <font face="宋体" size=2>[Microsoft][ODBC SQL Server Driver][SQL Server]事务(进程 ID  53)
Action.c(30):     与另一个进程已被死锁在  lock 资源上,且该事务已被选作死锁牺牲品。请重新运行该事务。</font>
Action.c(30):     \n
Action.c(30):     <p>\n
Action.c(30):     <font face="宋体" size=2>/Purchase/stockin_action.asp</font><font face="宋体" size=2>,行
Action.c(30):     205</font>
Action.c(30): Error -26612: HTTP Status-Code=500 (Internal Server Error) for "http://192.168.100.88:88/Purchase/stockin_action.asp?Oper=Edt"   [MsgId: MERR-26612]
Action.c(30): t=37758ms: Closing connection to 192.168.100.88 after receiving status code 500   [MsgId: MMSG-26000]
Action.c(30): t=37758ms: Closed connection to 192.168.100.88:88 after completing 43 requests   [MsgId: MMSG-26000]
Action.c(30): t=37760ms: Request done "http://192.168.100.88:88/Purchase/stockin_action.asp?Oper=Edt"   [MsgId: MMSG-26000]
Action.c(30): web_submit_data("stockin_action.asp") highest severity level was "ERROR", 1050 body bytes, 196 header bytes   [MsgId: MMSG-26388]
Ending action Action. [MsgId: MMSG-15918]
Ending iteration 1. [MsgId: MMSG-15965]
Ending Vuser... [MsgId: MMSG-15966]
Starting action vuser_end. [MsgId: MMSG-15919]

解决了。。。。。。。


其实并发死锁本来就是本次的重点,之前是写事务,但没有做整个页面的锁定,只是写在SQL里。程序员说这样容易出现页面错误,

又改成页面锁定,具体怎么锁偶没看懂asp外行。之前事务冲突,偶让他写个标志,定义个数值字段增一,偶就可以直观看出来了。

这次改成页面就删掉这些标志了,于是出错就无处可寻。