扩展开发实现的两种方式
- 继承类AbstractJavaSamplerClient抽象类
- 实现JavaSamplerClient接口
1.继承抽象类
首先建立一个Maven项目并引入两个依赖,依赖版本与jmeter版本对应
<dependencies>
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>ApacheJMeter_core</artifactId>
<version>5.1.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.jmeter/ApacheJMeter_java -->
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>ApacheJMeter_java</artifactId>
<version>5.1.1</version>
</dependency>
</dependencies>
我们首先来创建一个类并继承抽象类,来实现一个hello jmeter
package com.jmetertest;
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
import org.apache.jmeter.samplers.SampleResult;
public class FirstDemo extends AbstractJavaSamplerClient {
public SampleResult runTest(JavaSamplerContext javaSamplerContext) {
System.out.println("hello jmeter");
return null;
}
}
然后我们用maven命令将其打包,cd到工作目录进行maven命令打包
E:\idea_workspace\jmeterDEV>mvn clean package
打包成功后会在target文件夹下找到打成功Jar包,取走它放入jmeter下lib\ext文件夹中,然后运行jmeter的GUI
创建一个线程组,下面再创建一个java请求,java请求中就可以选择到我们放入的jar包
运行执行就能在控制台看到hello jmeter
2.实现接口
它会让你实现4个方法
package com.jmetertest;
import org.apache.jmeter.config.Arguments;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerClient;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
import org.apache.jmeter.samplers.SampleResult;
public class firstDemo implements JavaSamplerClient {
public void setupTest(JavaSamplerContext javaSamplerContext) {
System.out.println("setup");
/*这个方法就是一个初始化方法,我们所有的初始化的动作都可以在这里写*/
}
public SampleResult runTest(JavaSamplerContext javaSamplerContext) {
/*这个方法就是实现你具体功能逻辑的方法*/
System.out.println("runTest");
return null;
}
public void teardownTest(JavaSamplerContext javaSamplerContext) {
/*这个方法是管结束动作的*/
System.out.println("teardown");
}
public Arguments getDefaultParameters() {
/*这个方法决定了在jmeter当中要显示哪些属性*/
System.out.println(" getDefaultParameters");
return null;
}
}
这里如果换了jar包,必须重启Jmeter
这里发现了