2011-11-07 40 views
0

我已經使用Jmeter在使用Forms身份驗證加載測試ASP.NET 4站點並且一切正常。使用Jmeter- Membership.GetUser()在ASP.NET中進行負載測試在HttpHandler中返回null

從那時起,已經添加了幾個HttpHandler,這正是我試圖加載測試的。如果一個負載測試1線程一切正常。如果我使用2個線程加載測試,那麼在調用Membership.GetUser()時會出現空引用異常。我已經在本地進行了調試,可以看到HttpContext.Current.User也爲空,但是調用Membership.GetUser("userName")會返回用戶。我知道應用程序可以處理2個以上的用戶,我剛剛使用了另一個負載測試應用程序(Web性能負載測試程序),它沒有錯誤。

任何人都可以指出我正確的方向嗎?

感謝

編輯:

只是爲了澄清,我正在測試這個我已經驗證

回答

0

我的問題是由於Jmeter中的「用戶參數預處理器」元素沒有被正確/很快執行。我已經用「CSV數據集配置」元素替換了它,並直接將它添加到線程組下面,它工作正常。

由於未使用用戶參數,因此線程未登錄到Web應用程序,因此爲什麼GetUser()返回null!

0

的問題是,認證委託人將不會設置,直到下一次 後請求到服務器。 如果您使用的是Login控件,則可以使用UserName屬性 來標識用戶。您的問題背後的主要關鍵。

+0

感謝您的回覆...... http處理程序深入網站,即在登錄和請求http處理程序之間有很多對服務器的請求。驗證委託人肯定會被設置?當負載測試時,網站的其他部分工作正常,只是http處理程序崩潰 – SneakAttaack

相關問題