LoadRunner中腳本回放問題及解決方法(下)
本次接著給大家分享LoadRunner中腳本回放問題及解決方法下半篇。
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”安裝上即可。
Step download timeout (120 seconds)
這是一個經常會遇到的問題,解決得辦法走以下步驟:
- 修改run time setting中的請求超時時間,增加到600s,其中有三項的參數可以一次都修改了,HTTP-request connect timeout,HTTP-request receieve timeout,Step download timeout,分別建議修改為600、600、5000。run time setting設置完了后記住還需要在control組件的option的run time setting中設置相應的參數。
- 辦法一不能解決的情況下,解決辦法如下:設置runt time setting中的internet protocol-preferences中的advaced區域有一個winlnet replay instead of sockets選項,選項后再回放就成功了。切記此法只對windows系統起作用,此法來自zee的資料。
Connection reset by peer
這個問題不多遇見,一般是由于下載的速度慢,導致超時,所以,需要調整一下超時時間。
解決辦法:Run-time setting窗口中的‘Internet Protocol’-‘Preferences’設置set advanced options(設置高級選項),重新設置一下“HTTP-request connect timeout(sec),可以稍微設大一些”。
open many files
問題一般都在壓力較大的時候出現,由于服務器或者應用中間件本身對于打開的文件數有最大值限制造成。
解決辦法:修改操作系統的文件數限制,aix下面修改limits下的nofiles限制條件,增大或者設置為沒有限制,盡量對涉及到的服務器都作修改。若解決不了,去查看應用服務器weblogic的commonEnv.sh文件,修改其中的nofiles文件max-nofiles數增大,應該就可以通過了,具體就是查找到nofiles方法,修改其中else條件的執行體,把文件打開數調大。修改前記住備份此文件,防止修改出錯。linux上可以通過ulimit–HSn 4096來修改文件打開數限制,也可以通過ulimit -a來查看。linux上可以通過lsof -p pid | wc -l來查看進程打開的句柄數。
Failed to connect to server
這個問題一般是客戶端鏈接到服務失敗,原因有兩個客戶端連接限制(也就是壓力負載機器),一個網絡延遲嚴重。
解決辦法:
- 修改負載機器注冊表中的TcpTimedWaitDelay減小延時和MaxUserPort增加端口數。注:這將增加機器的負荷。
- 檢查網絡延遲情況,看問題出在什么環節。
建議為了減少這種情況,辦法一最好測試前就完成了,保證干凈的網絡環境,每個負載機器的壓力測試用戶數不易過大,盡量平均每臺負載器的用戶數,這樣以上問題出現的概率就很小了。
Overlapped transmission of request to ... WSA_IO_PENDING
解決方法:
- 在腳本前加入web_set_sockets_option("OVERLAPPED_SEND", "0"),禁用TTFB細分,問題即可解決,但是TTFB細分圖將不能再使用
- 以通過增加連接池和應用系統的內存,每次增加25%。
Deleted the current transaction ... since response time is not accurate
這個問題不多遇見,一般出現在壓力機器上發生ping值為負數(AMD雙核CPU),可以重新啟動pc機或者打補丁
HTTP Status-Code=500 (Internal Server Error) for
應用服務當掉,重新啟動應用服務。