2016-06-28 15 views
1

私はいくつかの新しいことを学ぶためにjMeterを殴ってきました。私は2.13を使用しています。私が昨日演奏したことの1つは、「レスポンスをファイルに保存する」リスナーです。 "Filename prefix"フィールドに作成したいファイル名のパスを入れました。うまくいくようです。jMeterの "Save Responses to a file"の変数フィールド -

「変数名」フィールドを使用する方が面倒です。

enter image description here

Apacheのマニュアルは、フィールドがあることを言う:生成されたファイル名を保存する変数の

名(それが テスト計画で、後で使用することができます)

素晴らしい!変数に名前を付け、BeanShell PostProcessorスクリプトの値にアクセスしようとしました。

String startCode = vars.get("START_CODE"); 
String filename = vars.get("FILENAME"); 
String transNum = vars.get("TRANSACTION_NUM"); 
System.out.println("startCode=" + startCode + ", transNum=" + transNum + ", filename=" + filename); 

私はいつもnullを取得します。私は昨日、この日に多くのことをハックしました。私は "User Defined Variables"で変数を宣言してみました。それは少なくとも私に空の文字列またはUDFのValue列に置いた値を与えます。

他の変数へのアクセスが正しい値をフェッチすることを除いて、私はBeanShellでも緑色であると言います。ちょっと混乱します。

+0

'System.out.println'がうまく動作しませんでした。あなたは 'log.info'を試しましたか?右上隅にあるログに表示されます。 – RowlandB

+0

いいえ、System.out.println()が動作します(出力はjmeter.batが開始されたコンソールウィンドウに移動します)。とにかく、私はあなたの提案を試み、log.info()は私に同じ結果を返します - null。 –

答えて

2

だから問題は何ですか?私はあなたがSave responses to a fileリスナーで変数名を使用することはできませんが、それは年齢の変更されていないとかなりうまく動作するために使用されている疑いがあります。リスナーの使用に関する追加のドキュメントが必要な場合は、Performance testing: Upload and Download Scenarios with Apache JMeterの記事をご覧ください。

あなたはポストプロセッサでリスナーに生成さFILENAME変数値があることへのアクセスに問題がある場合 - リスナーが特定のポストプロセッサ(特にBeanShellのと同様の)として AFTERポストプロセッサは、結果を変更することができ起こると、これは一種の期待されています。だから、BeanShellのからFILENAME変数にアクセスできるようにするために:

  1. 代わりにBeanShellの後処理
  2. の使用Beanshell Listenerは、そうでない場合は、あなたがに実行するだろう、BeanShellのリスナーは、ファイルのリスナーに以下の保存応答であることを確認してください同じ状況
+0

OK、Beanshell PostProcessorの代わりにBeanshell Listenerを使用すると、「Save Responses to a file」のFILENAME変数を取得することができました。 –

関連する問題