2017-03-08 20 views
1

私はシンプルなJMeterスクリプトとWHILEコントローラーを使用しています。 私は1人のユーザーと1回の反復でテストを実行するとき、whileコントローラはうまく実行します。Jmeter:コントローラー:ループが2回目の処理で実行されないとき

私は1人のユーザーおよび2(1以上)の反復のテストを実行すると、コントロールは例えば1ユーザーおよび3反復

反復1用コントローラ

ながら中に入っていない:コントローラがしますが実行される:反復は
反復2を通過する:コントローラが実行されつつ:反復は
反復3を失敗する:コントローラが実行されつつ:反復は、予め

おかげで失敗します。

+0

「While Controller」で指定した条件は何ですか?スクリーンショットを追加してください。参照用 –

+0

@Naveen追加条件、 $ {__のJavaScript(「$ {file_status}」!=「UNPUBLISHED」)} –

答えて

0

私の期待は、あなたが、コードはのように簡単になります私はJSR223 Test Element経由でそれをやってのみ提案することができ、あなたのテスト計画の詳細を知らない、第二反復の初めにあなた${file_status}変数値をリセットする必要があるということです:

vars.put("file_status", "something not equal to UNPUBLISHED") 

varsは、それがスコープ内のすべてのJMeter Variablesへの読み取り/書き込みアクセスを提供し、上記のコードは、第二およびさらなる反復あなたの中にそうUNPUBLISHEDから別のものに${file_status}変数の値を設定します、JMeterVariablesクラスのインスタンスへの速記でありますコントローラも同様に実行されます。

JMeterテストでのGroovyスクリプトの使用の詳細については、Groovy Is the New Blackの記事を参照してください。

+0

私はあなたの子としてプリプロセッサを置くと –

+0

より好ましいプリおよびポストプロセサの下で2 JSR223を参照してくださいそれが要求の前に実行される要求は、それの後にPostProcessorが実行されます。私は使用することを示唆するほどのテレパシーはありませんが、While Controllerが間違いなく動作する前にJSR223サンプラーが動作します –

+0

これはうまくいきました。あなたが提案したものを実装し、WHRLEの前にJSR223サンプラーを追加し、 :) –

関連する問題