2017-03-25 22 views
0

CSVファイルから100人のユーザーを選ぶテストプランがあります。スレッド数を500、ループ回数を1とすると、490が失敗し、10回だけが渡されたことがわかります。しかし、同時にスレッドを5に、ループ回数を100とすると、すべてのテストがパスされます。リクエストの総数が500件の場合と同じではありませんか?スレッドが減少したときにJMeterの結果が異なるのはなぜですか?

これは500スレッドと5スレッドのためですか?

+1

あなたは失敗メッセージを見ましたか?失敗理由に関する情報は何でしたか? –

+0

10スレッドでボトルネックがあります。 JMeterメモリ、ポート、サーバー側になる可能性があります。nazar_artが言ったように、エラー –

答えて

0

デフォルトでは、ファイルは1回だけ開き、各スレッドはファイルから別の行を使用します。ただし、スレッドに渡される行の順序は実行する順序によって異なりますが、反復によって異なる場合があります。

JmeterのCSV-DataSet-Configプロパティを「EOFでリサイクル - True」に変更する ;あなたの問題は解決します

希望はこれが助けます!

+0

を見る必要があります。このプロパティはどこに設定されていますか? –

+0

CSV-Data-Set-Configを選択します。変数名を指定する場所、その下にこれらの設定が表示されます(ドロップダウンビュー) – Satish

0

異なる負荷パターンを適用するため、異なる結果になります。次のようにJMeterは作用:

  • スレッド(仮想ユーザー)オフ各Thread Groupキックは、ランプアップ期間
  • 内のスレッドがdoesnの場合、各スレッドは、
  • 逆さSamplersを実行する(またはLogic Controllersに従って)起動します「Tは、実行する任意のより多くのサンプラーを持っているかの理由がになることができるように、それは

をシャットダウンされているinterateにループ:

  1. アプリケーションでは500人のユーザーを処理できません。エラーの詳細をログで確認します。特定のエラーがない場合は、ハードウェアリソースが不足している可能性があります。JMeter PerfMon Plugin Telemetryでテストを再実行し、負荷がハードウェアリソース消費に与える影響を確認してください。
  2. アプリケーションの基礎となるコンポーネントは高負荷には適していません。一部のアプリケーションサーバーとデータベースサーバーには、接続の制限、メモリ割り当ての不足などがあります。つまり、開発とデバッグに適した構成です。プロダクションデプロイメントは完全に異なる設定を前提としているため、検査と修正が必要です。
  3. JMeterインスタンスは、必要な負荷を作成できません。

    • JMeterの
    • のための増加JVMのヒープサイズが非でテストを実行します。それはあなたには、いくつかの重要な点を気にする必要は負荷テストを実行していることになるとの点で2 JMeterのデフォルト設定は、しかし、テストの開発のために良いですのようにテスト実行中のGUIモード
    • 無効にし、すべてのリスナー

      詳しく

  4. ためにJMeterのユーザーマニュアルの Reducing resource requirements章を参照してください。
+0

ありがとう、Dmitri。あなたと確認するために、各スレッドは1人のユーザーとして扱われます。ループを使うのではなく、私の場合はスレッドを使うべきだと思います。ヒープサイズが4096に変更され、NON-GUIで実行され、すべてのリスナーが無効になりました。 –

関連する問題