2011-11-07 28 views
0

フォーム認証を使用してASP.NET 4サイトをテストする前にJmeterを使用しました。Jmeterを使用したASP.NET負荷テスト - Membership.GetUser()はHttpHandlerでnullを返します

それ以来、いくつかのHttpHandlerが追加されました。これが私がテストを読み込もうとしているものです。 1つのスレッドで負荷テストを行っても問題ありません。 2つのスレッドでテストをロードすると、Membership.GetUser()を呼び出すときにnull参照例外がスローされます。私はローカルでこれをデバッグしましたが、Membership.GetUser("userName")を呼び出すと、ユーザが返されますが、HttpContext.Current.Userもnullであることがわかります。

私は、アプリケーションが2人以上のユーザーを処理できることを知っています。別の負荷テストアプリケーション(Web Performance Load Tester)を使用しただけで、エラーは発生しませんでした。

誰でも正しい方向に私を指摘できますか?

おかげ

編集:

ちょうど私が

答えて

0

私の問題は、Jmeterの「User Parameters Pre Processor」要素が適切に/すぐに実行されないことが原因でした。私はこれを "CSV Data Set Config"要素に置き換え、スレッドグループの直下に追加して、うまく動作します。

ユーザーパラメータが使用されていないため、スレッドはWebアプリケーションにログインしていないため、なぜGetUser()がnullを返していましたか。

0

問題は、認証プリンシパルが 次まで設定され得ることはありませんされていることを認証してきた後、私はこれをテストしてい、明確にします要求をサーバーに送信します。 Loginコントロールを使用している場合は、UserNameプロパティを使用して に問題の背後にあるuser.Mainキーを識別できます。

+0

返信いただきありがとうございます... httpハンドラはサイトの深いところにあります。つまり、ログインしてからhttpハンドラをリクエストする間に、サーバに多くのリクエストがあります。認証主体は当然それによって設定されるでしょうか?残りのサイトは負荷テスト時にうまく動作し、httpハンドラが落ちるだけです – SneakAttaack

関連する問題