1 创建 maven 项目
1)File-New_Project

2)选择 maven 项目

3)输入 GroupId、ArtifactId

4)点击 finish

5)导入变化

6)maven 工程说明


7)双击 package

2 导入 jar 包
Jmeter 调用 java 接口,只用导入两个包即可,即:apache jmeter core、apache jmeter java。
1)百度搜索 maven 仓库,maven 仓库里搜索 jmeter

2)选择与自身 jmeter core 版本

3)复制下载地址到 pom.xml 的 dependencies 标签下

4)同样的方法复制 apache jmeter java 下载路径到 pom.xml

3 创建类并打包
创建类继承 AbstractJavaSamplerClient,实现方法并打包
说明:创建一个类实现接口与继承类重写方法二选一时优先选择实现接口,原因一个类可以实现多个接口,但只能继承一个父类,一旦继承了后面就没法再继承。
1)在 main—>java 下创建一个 jmeter 包

2)创建一个类并实现 JavaSamplerClient 接口或继承 AbstractJavaSamplerClient,并重写方法
- 创建 TestHi 类
1 2 3 4 5 6
| package jmeter; public class TestHi { public String hi(String name){ return "Hi,"+ name; } }
|
- 创建 JmeterTestHi 类
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| package jmeter;
import org.apache.jmeter.config.Arguments; import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient; import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext; import org.apache.jmeter.samplers.SampleResult;
//创建一个类继承AbstractJavaSamplerClient public class JmeterTestHi extends AbstractJavaSamplerClient{ //①方法的重写只能放生在子父类中;②方法名一致,参数列表也一致③方法重写一般是用来扩展父类 //重写runTest方法 public SampleResult runTest(JavaSamplerContext javaSamplerContext) { SampleResult sr = new SampleResult(); sr.sampleStart(); TestHi hi = new TestHi(); //获取jmeter的参数,参数名是name String username = javaSamplerContext.getParameter("name"); String str = hi.hi(username); //设置响应数据 sr.setResponseData(str,null); sr.setSuccessful(true); sr.sampleEnd(); return sr; }
@Override //设置默认参数 public Arguments getDefaultParameters() { Arguments arguments = new Arguments(); arguments.addArgument("name","zhangsan"); return arguments; } }
|
3)双击 package,打包

4)查看 jar 包路径

4 导入 jar
将 jar 包放在 jmeter 的 lib 下的 ext 下

5 jmeter 中添加 java 请求
注意,jar 包放入 lib/ext 下后需要重启 jmeter 否则选择不到自己的类
