在錄製web協議指令碼回放時超時情況經常出現,產生錯誤的原因也有很多,解決的方法也不同。
錯誤現象1:action.c(16): error -27728: step download timeout (120 seconds) has expired when downloading non-resource(s)。
錯誤分析:對於http協議,預設的超時時間是120秒(可以在loadrunner中修改,在「run-time settings」>「internet protocol:preferences」中,單擊「options」,修改step download time的值),客戶端傳送乙個請求到伺服器端,如果超過120秒伺服器端還沒有返回結果,則出現超時錯誤。
解決辦法:首先在執行環境中對超時進行設定,預設的超時時間可以設定長一些,再設定多次迭代執行,如果還有超時現象,需要在「runtime setting」>「internet protocol:preferences」>「advanced」區域中設定乙個「winlnet replay instead of sockets」選項,再回放是否成功。
錯誤現象2:action.c(81):continuing after error -27498: timed out while processing url= orderinfo.do
錯誤分析:這種錯誤常常是因為併發壓力過大,伺服器端太繁忙,無法及時響應客戶端的請求而造成的,所以這個錯誤是正常現象,是壓力過大造成的。
如果壓力很小就出現這個問題,可能是指令碼某個地方有錯誤,要仔細檢視指令碼,提示的錯誤資訊會定位某個具體問題發生的位置。
解決辦法:例如上面的錯誤現象問題定位在某個url上,需要再次執行一下場景,同時在其他機器上訪問此url。如果不能訪問或時間過長,可能是伺服器或者此應用不能支撐如此之大的負載。分析一下伺服器,最好對其效能進行優化。
如果再次執行場景後還有超時現象,就要在各種圖形中分析一下原因,例如可以檢視是否伺服器、dns、網路等方面存在問題。
最後,增加一下執行時的超時設定,在「run-time settings」>「internet protocol:preferences」中,單擊「options」,增加「http-request connect timeout」或者「http-request receive」的值。
注:以上所謂的「解決」執行過程中的超時錯誤,都是通過修改「run-time settings」>「internet protocol:preferences-options中的相關設定來實現的,這在某些情況下,確實可以讓指令碼避免超時,從而指令碼執行「順利」通過,但是有一點需要注意,之所以會有超時的現象發生,說明測試的效果是不佳的,我們測試的目的不是為了讓指令碼執行通過,或者說為了讓指令碼執行時不報錯誤,我們終極目的是想知道系統的效能表現如何,所以對於測試場景執行過程中出現超時錯誤,這是一種不好的現象,我們需要慎重考慮與分析為什麼會產生超時。
HttpWebRequest請求超時的錯誤
從網上抓取點資料,其間要建立兩個httpwebrequest,第乙個請求傳送成功後,將服務端返回的cookie記錄下來給第二個 httpwebrequest使用.敲完了就執行吧,但請求到20次左右,總是會出現 請求超時 的錯誤,找了n久也沒找到問題在 開始,我以為是服務端限制了請求數量,於是,找了些...
loadrunner無法錄製解決
錄製的時候,彈出錄製工具條,但是沒啟動ie,或者直接提示ie出錯 網上有3種方法,不行就都試下吧 1.系統屬性,高階選項卡下,效能裡面,單擊設定按鈕,修改資料執行保護為 只為關鍵windows程式和服務啟用資料執行保護 然後,重啟一下就可以了。具體內容請檢視 2.ie6 工具 internet選項 ...
Loadrunner 解決亂碼問題
在使用loadrunner錄製和回放時有時候會因為亂碼問題報錯,且讓我們很難定位出指令碼問題所在。此事我們做一下分析loadrunner為什麼會出現亂碼這種情況呢?1 亂碼產生的原因 1 loadrunner軟體工具本身使用的是utf 8編碼,而我們的中文系統一般使用的是gbk gb18030等中文...