2017-08-04 92 views
0

正在嘗試使用JMeter在我的服務器中加載測試事務。 我使用Badboy軟件創建了腳本,並試圖在JMeter上運行它,但它給了我一個內部服務器錯誤。JMeter中的內部服務器錯誤

主題名稱:線程組1-1

Sample Start: 2017-08-04 17:33:21 SGT 
Load time: 17 
Connect Time: 0 
Latency: 16 
Size in bytes: 477 Sent 
bytes:0 
Headers size in bytes: 445 
Body size in bytes: 32 Sample 
Count: 1 
Error Count: 1 
Data type ("text"|"bin"|""): text Response 
code: 500 
Response message: Internal Server Error 

響應頭:

HTTP/1.1 500 Internal Server Error 
Date: Fri, 04 Aug 2017 09:33:11 GMT 
X-Powered-By: Servlet/3.0 

$ WSEP:

Content-Length: 26851 
Set-Cookie: oam.Flash.RENDERMAP.TOKEN=-iyyeawi7n; Path=/BelsizeWeb 
Set-Cookie: oam.Flash.RENDERMAP.TOKEN=-iyyeawi7m; Path=/BelsizeWeb 
Expires: Thu, 01 Dec 1994 16:00:00 GMT 
Cache-Control: no-cache="set-cookie,set-cookie2" 
Connection: close 
Content-Type: text/html; charset=UTF-8 
Content-Language: en-US 

HTTPSampleResult領域:

ContentType: text/html; charset=UTF-8 
DataEncoding: UTF-8 

我試過使用Blazemeter記錄軟件,但即使沒有服務器錯誤,我的服務器日誌中也沒有記錄事務或登錄。 感謝您的幫助

+0

內部服務器錯誤是從服務器來了,可從來沒有你的測試場景「在JMeter中」 這可能意味着您的JMeter請求與服務器期望的不匹配(例如沒有認證,亂序,缺少標題,榮體格式等)。所以你需要調試你的腳本,看看你發送錯誤。 –

回答

0
  1. 根據HTTP Status Code 500 description

    的HTTP 500內部服務器錯誤服務器錯誤響應代碼表示的服務器遇到阻止其完成請求的意外情況。

    此錯誤響應是一個通用的「全部」響應。通常情況下,服務器管理員會記錄諸如500狀態碼之類的錯誤響應,並提供有關請求的更多詳細信息以防止未來再次發生錯誤。

    因此,首先您需要檢查您的應用程序日誌,很可能您會從中獲得更詳細的信息。

  2. 展望Set-Cookie header

    Expires: Thu, 01 Dec 1994 16:00:00 GMT 
            ^^^^ what? 
    

    嘗試增加HTTP Cookie Manager到您的測試計劃和設置CookieManager.check.cookies=false財產user.properties文件

  3. 在大多數情況下,你不能只是記錄和重放現代Web應用程序操作,因爲它們廣泛使用動態參數來進行客戶端狀態跟蹤和安全原因。所以,你需要設計你的測試,如:

    • 打開登錄頁面使用JMeter PostProcessors(通常是GET請求)
    • 進行登錄(通常是POST請求)提供證書和上述提取的動態參數值

    該pro塞斯被稱爲correlation並給予你正確地執行它,你應該能夠重播使用JMeter的(使用View Results Tree listener和1個虛擬用戶驗證測試)