Flask接口签名sign原理与实例代码浅析
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小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~