質問
Javaサービスコールをテストしたいのですが。私の最初の試みは、を使用することでした 「Javaリクエストサンプラー」 Docuは言います
このサンプラーを使用すると、Javasamplerclientインターフェイスを実装するJavaクラスを制御できます。
org.apache.jmeter.protocol.java.sampler.javasamplerclientインターフェイスを取得する方法はわかりません。 Jmeter Mavenプラグインだけ(これは私が探しているものではありません)。地元のMavenリポジトリに必要なバイナリをインストールすることができましたが、それらがどこにあるのかわかりません。
誰かが「Java Request Sampler」を使用しているのではないかと思っていますか?
ps多分私は試してみるべきです Junitサンプラー
解決
私たちはアリで構築しており、にある瓶を使用しています。 jmeterからのバイナリファイル 下 \lib\ext\
. 。 AbstractJavaSamplerClient
Javaリクエストサンプラーに使用されるサンプラーはファイルにあります \lib\ext\ApacheJMeter_java.jar
. 。この抽象クラスで作業するには、JARファイルもインポートする必要があります \lib\ext\ApacheJMeter_core.jar
, 、(たとえば)クラスを保持している SampleResult
.
Javaクラスを構築した後、結果のJARファイルもフォルダーに配置します \lib\ext\
。クラスが依存関係(3番目のパートJAR)を使用している場合、「 lib」フォルダーに入れます。その後、JMeterを起動すると、JavaリクエストサンプラーでJavaクラスを選択できます。
このようなJavaリクエストサンプラーの例は次のとおりです。
public class JavaRequestSamplerDemo extends AbstractJavaSamplerClient {
@Override
public SampleResult runTest(JavaSamplerContext ctx) {
JMeterVariables vars = JMeterContextService.getContext().getVariables();
vars.put("demo", "demoVariableContent");
SampleResult sampleResult = new SampleResult();
sampleResult.setSuccessful(true);
sampleResult.setResponseCodeOK();
sampleResult.setResponseMessageOK();
return sampleResult;
}
}