JMeter 实现Java请求步骤及原理详解

网友投稿 537 2022-12-10


JMeter 实现Java请求步骤及原理详解

1.jar包

添加jar包依赖,注意和Jmeter的版本相同:

ApacheJMeter_core.jar,ApacheJMeter_java.jar

2.写Java请求

先继承 AbstractJavaSamplerClient,或者实现 JavaSamplerClient,

各方法和参数:

getDefaultParameters(),用来自定义参数的。

runTest(),请求主体。

Arguments类: 参数管理;

addAuguments() 用来添加参数。

JavaSamplerContext类: javaSampler的容器类,用来接收、处理用户传入的参数。

getParameter("参数名称") 用来获取指定的参数的值。

SampleResult类,请求类。

代码实现

public class HelloThree extends AbstractJavaSamplerClient {

String uname="";

//定义GUI界面的参数。

@Override

public Arguments getDefaultParameters() {

Arguments params = new Arguments();

params.addArgument("username", "Jerry");

return params;

}

@Override

public void setupTest(JavaSamplerContext context) {

//获取参数

uname = context.getParameter("username");

}

//主体执行部分。

@Override

public SampleResult runTest(JavaSamplerContext javaSamplerContext) {

DJbyIl//new一个SampleResult对象,用来实现计时、结果回写等操作。

SampleResult sr=new SampleResult();

//初始化业务功能类。业务功能类就是真正用来实现请求发送的类。

Request request=new Request();

//业务操作

try {

//请求开始计时

sr.sampleStart();

//调用业务方法。

String result=request.say(uname);

//设置显示的请求数据,非必DJbyIl须。

sr.setSamplerData("this is uname="+uname);

//设置显示的响应数据,必须。

sr.setResponseData(result,sr.TEXT);

//设置请求的结束状态。

sr.setSuccessful(true);

} catch (Exception e) {

sr.setResponseData("fail msg:"+e.getMessage(),sr.TEXT);

sr.setSuccessful(false);

} finally {

//请求结束计时。

sr.sampleEnd();

}

return sr;

}

}

写好之后打成jar包;

3.jar包的存放

扩展的组件本身的jar包,放入Jmeter的lib\ext目录。

业务jar包及其所有的依赖包,放入Jmeter的lib目录。

然后重启jmeter,添加Java请求,就可以看到新增的Java请求了。

lib目录的冲突、管理:

业务本身需要用到的一些jar包,可能Jmeter的lib目录原始就存在。因此会存在以下问题:

jar包版本的冲突问题。

jar包数量太多,无法有效DJbyIl区分。

解决方法:在Jmeter.properties中设置plugin_dependency_path


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Spring Security如何基于Authentication获取用户信息
下一篇:java加载属性配置properties文件的方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~