6

負荷テストを実行すると、不変の問題が発生し、HTTPリクエストがタイムアウトしたり、サーバーがカスタムエラーページを返したりする場合があります。エラーが発生することを予期せずに実行される素敵なjMeterスクリプトがあります。これは、使用率が低い場合に発生します。

このスクリプトを変更して、エラーが発生した場合に、エラーが発生しなかったリクエストを、エラーが発生しなくなるまでスクリプトが再実行するようにするにはどうすればよいですか?たとえば、ログイン要求があり、失敗した場合は続行したくないので、ログインが機能するまで試行を続けます。また、ログイン後にページが失敗した場合に再度ログインしたくないので、スクリプトを再開したくありません。

スレッドグループの「次のループを続行」を見ましたが、実際に何が行われているのかわかりません。テストを最初からやり直しますか?次のループロジックコントローラにジャンプしますか?すべてのリクエストをループで囲む必要がありますか?

ありがとうポール

4

1 に答える 1

4

次のループに進むと、サンプラーのいずれかがfalseを返した場合に、スレッドグループ全体が再起動します。

リクエストの再試行に関しては、Whileコントローラーを使用してこれを実現できます。「LoginSuccessful」のように、成功時にのみ表示される値を探している正規表現エクストラクタがある場合は、While Controllerにwhilemyvar!= "some text"をループするように指示すると、目的の結果が得られます。明らかに、このループ内でタイマーを使用する必要があります。

しかし実際には、AUTが負荷の下でエラーを示している場合は、テストではなく、アプリケーションの修正に労力を費やしたほうがよいでしょう。それらが実際の本物のアプリケーションエラーである場合、多くのエラーでテストを実行することは完全に有効です-あなたはそれらをマスクしたくないのです。

于 2012-05-29T10:46:41.380 に答える