3

私はJmeterが初めてです。現在、Jmeter で Web サービス呼び出しをテストしています。Web サービス呼び出しを介してサーバーに要求を送信しました。私の入力はxmlファイルとその暗号化された形式です。だから私は PostBody で暗号化された文字列を与えました。

私の問題は、Jmeter で暗号化プロセスを実行できないことです。
そこで、jmeter を Java クラスに接続してサーバーに送信することにしました。

Jmeter--->Java class--->server.

Jmeter 2.8を使用しました

JmeterをJavaクラスに接続することは可能ですか?

4

3 に答える 3

2

よくわかりませんが、やりたいことが次の場合:

  1. 一部の XML を暗号化する
  2. Web サービスを呼び出す HTTP サンプラーに Raw Post Body として渡します

それを行うための答えは次のとおりです。

  1. JMETER_HOME/lib フォルダーに groovy-all.jar を追加します。

  2. HTTP サンプラーでJSR223 プリ プロセッサを使用し、次の Groovy コードを配置します。

    import org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase;
    import org.apache.jmeter.protocol.http.util.HTTPArgument;
    
    HTTPSamplerBase httpSamplerBase = (HTTPSamplerBase) sampler;
    
    HTTPArgument argument = 
                httpSamplerBase.getArguments().getArgument(0);
    
    String valueToEncrypt = argument.getValue();
    // Do you encryption here, in this example I put ENC for testing
    valueToEncrypt = "ENC"+valueToEncrypt;
    httpSamplerBase.getArguments().clear();
    httpSamplerBase.addNonEncodedArgument("", valueToEncrypt, "");
    
  3. HTTP Samplerで、元の XML を暗号化するように Raw Post Body テキスト領域に配置します。

計画は次の構造になります (HTTP ミラー サーバーは私のテスト用です)。

ここに画像の説明を入力

注: 現在の JMeter ナイトリー ビルドを使用しているため、スクリプト コンパイル キャッシュ部分はまだ利用できず、2.9 に含まれる予定です。代わりに、スクリプトを外部ファイルに入れて、[ファイル名] フィールドで参照します。

于 2012-12-27T15:27:39.933 に答える
1

jMeterは多くのことと話すことができます(Apacheのこのリストを参照してください)。1つはJMSであり、おそらくJavaサーバーへの接続に使用できます。またはhttp(通常は使用されます)。それはすべて、Javaクラスが何に応答できるかに依存します。

于 2012-12-27T14:22:11.050 に答える