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外行。之前事務沖突,偶讓他寫個標志,定義個數值字段增一,偶就可以直觀看出來了。
這次改成頁面就刪掉這些標志了,於是出錯就無處可尋。