1

サーバーへの http 呼び出しを行うことができる Jmeter テスト計画を構築しようとしています。スレッド グループ内の各スレッドは、CSV ファイルから 2 つのパラメーターを読み取り、パラメーターを使用して http 呼び出しを行い、同じパラメーターを使用して同じ呼び出しを 1000 回続けます。各スレッドの実行の間に 10 秒の遅延があります。

http呼び出しは次のようになります

/service/method?param1=${param1}¶m2=${param2}

CSV は次のようになります。

1,2
3,4
5,6
7,8

単一の問題を除いて、ほとんどの部分で機能するテスト計画をセットアップしました。スレッドが実行されるたびに、各スレッドが同じパラメーター (同じ入力行) を使用するようにします。現在、それを行う唯一の方法は setRecycle on EOF = trueですが、スレッドは値をランダムに選択します。Param1 と Param2 は、実行中に同じスレッドに固執する限り、ランダムに生成された値にすることができます。

とにかく私はこれを達成することができますか?

ありがとう!

4

2 に答える 2

2

あなたの問題を正しく理解しているかどうかはよくわかりませんが(より明示的に説明するか、例を使用して説明できる可能性があります)、以下のスキーマはテスト計画の説明を実装する必要があります。

テスト計画
    スレッド グループ
    スレッド数: N
        . . .
        While Controller 
        Condition: ${__javaScript("${param2"!="<EOF>",)} - EOF CSV Data Set Configまで csv ファイルを読み取る 
            
            ファイル名: [テストデータを含むファイルへのパス]
            変数名: param1、param2
            EOF でリサイクルしますか? 間違い
            EOF でスレッドを停止しますか? 真実
            共有モード: 現在のスレッド グループ
            ループ コントローラー
            ループ カウント = 1000 - 同じパラメータを持つ各スレッドのループ数
                HTTP リクエスト - HTTP 呼び出し
                テスト アクション
                ターゲット = 現在のスレッド
                アクション = 一時停止
                期間 (ミリ秒) = 10000 - 呼び出し間の一時停止
            . . .

N 個のスレッドのそれぞれがcsv ファイルから単一の一意のSharing mode: Current thread group行を読み取って使用する必要がある場合は、CSV データ セット構成を設定する必要があります (この場合、csv エントリの数はスレッド数と同じでRecycle on EOF? Falseある必要があります。それ以外の場合)。
N 個のスレッドのそれぞれがcsv ファイルからすべてのSharing mode: Current thread行を読み取って使用する必要がある場合は、CSV データ セット構成を設定する必要があります。

それが望ましくない場合は、問題をもう少し明確に説明してください。

于 2012-09-12T17:01:16.817 に答える
0

ハックのようなものを見つけることができました。基本的に、各スレッドに定数タイマーを配置し、スレッド番号 ${__threadNum} をパラメーターとして使用して、同じパラメーターを同じスレッドで使用するという制約に適合させました。

私はまだcsvファイルからパラメータを読み取る方法を好むでしょう。

于 2012-09-14T03:19:17.770 に答える