2016-07-13 92 views
0

我正在使用JMeter UI加載測試我們的Web應用程序。我按照以下順序發送HTTP請求。登錄到應用程序失敗。但登錄成功後的請求

  1. GET請求登錄頁面。
  2. POST請求登錄到應用程序。
  3. 登錄到應用程序後獲取用戶頁面。

我測試與50個用戶與10秒的斜坡上升週期和1

這裏的循環計數是測試結果:

  1. 所有50 GET請求成功。
  2. 所有50個POST請求登錄信息與錯誤失敗:`

org.apache.http.NoHttpResponseException: server failed to respond

` 3. 29 GET用戶請求通過,剩餘的(21)與所述響應代碼302

失敗

根據我的理解,由於所有POST請求登錄到應用程序失敗,我希望所有GET請求獲取用戶頁面也將失敗。但是,一些GET用戶請求成功。

任何人都可以請解釋這是怎麼發生的?

注意:我正在使用HTTP cookie管理器和HTTP緩存管理器。

編輯: 我在我的所有請求中都禁用了KeepAlive。此外,嘗試了這個thread的建議。但是,沒有運氣。 另外,對於50個虛擬用戶,如果我將加速時間設置爲120秒,則所有請求都會成功。 我注意到上面提到的問題,只有當我將加速時間設置爲10秒。 當我將加速時間設置爲60秒時,結果如下所示。

  1. 所有50個GET登錄請求都成功了。
  2. 11 POST登錄請求成功。其餘的(39)失敗,錯誤`

org.apache.http.NoHttpResponseException: server failed to respond

` 3.13 GET用戶的請求成功。其餘的(37)失敗,迴應碼爲:302

+1

「無反應」是指無疾而終從服務器返回,但最有可能的帖子沒有得到那裏進行處理。只是...沒有東西被送回來。沒有標題,沒有正文等... –

+0

@MarcB,有沒有什麼我可以做的,以獲得服務器的響應?或者您認爲應用程序無法一次處理多個請求,而不能將響應發送回去? – sridhar249

回答

0

很明顯,即使登錄沒有完成,仍可以完成某些操作。

顯然,一個PRIOR登錄已經完成,並且該會話永遠不會終止:對於下一個闖入者繼承來說,半成品但是實時的證書留下來。

它沒有工作,它失敗了!由於某種原因,當他們的會話看起來剛剛「消失」時,完全登錄用戶。

0

Disable KeepAlive。打開HTTP request sampler,有一個複選框KeepAlive這是默認選中的。

此外,請將您的HTTP請求的「Implementation」更改爲HTTPClient4

看到這個thread

+0

我已經在我的所有HTTP請求中禁用了KeepAlive。此外,嘗試使用默認選項「HTTPClient4」的「實施」。我看到了相同的結果。 – sridhar249

+0

什麼是JMeter版本? – Adnan

+0

我正在使用最新版本3.0 r1743807 – sridhar249

相關問題