使用idea创建一个maven工程
image.png
image.png
输入GroupId和ArtifactId
image.png
image.png
在工程的pom.xml中引入maven依赖 并更新下载依赖包到本地
<dependencies><dependency><groupId>org.apache.jmeter</groupId><artifactId>ApacheJMeter_core</artifactId><version>3.2</version></dependency><dependency><groupId>org.apache.jmeter</groupId><artifactId>ApacheJMeter_java</artifactId><version>3.2</version></dependency></dependencies>
image.png
在main/java下 创建一个Java类 JavaDemo并实现JavaSamplerClient接口
image.png
image.png
实现JavaSampleClient的方法
image.png
image.png
这里列举一个案例 比如写一个自定义java请求 输入两个字符串 返回两个字符串拼接的结果 代码如下:
importorg.apache.jmeter.config.Arguments;importorg.apache.jmeter.protocol.java.sampler.JavaSamplerClient;importorg.apache.jmeter.protocol.java.sampler.JavaSamplerContext;importorg.apache.jmeter.samplers.SampleResult;publicclassJavaDemoimplementsJavaSamplerClient{publicvoidsetupTest(JavaSamplerContextjavaSamplerContext){}publicSampleResultrunTest(JavaSamplerContextjavaSamplerContext){SampleResultresult=newSampleResult();Stringstr1=javaSamplerContext.getParameter("String-1");Stringstr2=javaSamplerContext.getParameter("String-2");result.setSampleLabel("StringConnnect");//设置java请求的Label名result.setSuccessful(true);//告诉查看结果树访问是否成功result.setDataType(SampleResult.TEXT);//设置响应结果类型为文本类型result.setResponseData(str1+"---"+str2,"utf-8");//设置java请求的返回值returnresult;}publicvoidteardownTest(JavaSamplerContextjavaSamplerContext){}publicArgumentsgetDefaultParameters(){//定义java请求的输入参数Argumentsparams=newArguments();params.addArgument("String-1","");params.addArgument("String-2","");returnparams;}}
写好之后用maven进行打包 将打包成功后的jmeter-1.0-SNAPSHOT.jar 放入到jmeter目录下的 lib/ext下
image.png
image.png
重启Jmeter 添加自定义Java请求和查看结果数 测试自定义Java请求是否有效
image.png
测试后 能查看到Label和java请求返回值正确 说明自定义Java请求成功
image.png
作者:流年逝去sky