jmeter发送java请求_使用Jmeter JavaSampler发送java请求

用途

1.使用jmeter做dubbo接口的性能测试

2.使用jmeter做一些小工具,例如发送mq来构造测试数据等等

POM依赖

5.0

org.apache.jmeter

ApacheJMeter_core

${jmeter.version}

httpclient

org.apache.httpcomponents

org.apache.jmeter

ApacheJMeter_java

${jmeter.version}

httpclient

org.apache.httpcomponents

Demo

package jmerterDubbo;

import org.apache.http.HttpResponse;

import org.apache.http.util.EntityUtils;

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;

import util.HttpUtil;

/**

* Create by shenpengfei on 2019/1/24 11:34

*/

public class jmeterDemo extends AbstractJavaSamplerClient {

/**

* 这个方法是用来自定义java方法入参的

* params.addArgument("num1","");表示入参名字叫num1,默认值为空。

* @return

*/

@Override

public Arguments getDefaultParameters() {

Arguments params = new Arguments();

params.addArgument("url", "");

return params;

}

/**

* 每个线程测试前执行一次,做一些初始化工作

* 获取输入的参数,赋值给变量

* @param arg0

*/

@Override

public void setupTest(JavaSamplerContext arg0) {

System.out.println("Test Start...");

}

/**

* 真正执行逻辑的方法

* @param javaSamplerContext

* @return

*/

@Override

public SampleResult runTest(JavaSamplerContext javaSamplerContext) {

SampleResult sr = new SampleResult();

//获取之前的请求参数

String url = javaSamplerContext.getParameter("url");

sr.setSamplerData("request url:"+url);

try {

// jmeter 开始统计响应时间标记

sr.sampleStart();

HttpResponse res = HttpUtil.doGet(url);

String resultData = EntityUtils.toString(res.getEntity(),"utf-8");

sr.setResponseData(resultData,"utf-8");

sr.setDataType(SampleResult.TEXT);

System.out.println(resultData);

//返回正确

sr.setSuccessful(true);

} catch (Throwable e) {

sr.setSuccessful(false);

e.printStackTrace();

} finally {

// jmeter 结束统计响应时间标记

sr.sampleEnd();

}

return sr;

}

/**

* 测试结束后调用

* @param arg0

*/

@Override

public void teardownTest(JavaSamplerContext arg0) {

System.out.println("Test End...");

}

}

mvn打jar包

依赖

org.apache.maven.plugins

maven-jar-plugin

3.1.1

执行mvn install即可

4986dbcd2e386f02df402ee89b8392d9.png

191a0afd384f94326c5ba6d7119d6e07.png

JMETER测试一下

放到ext目录下

7fd582de1749620e76cd67adf09171ab.png

选中demo类

d553dcba10554055bddee9f9a91b7814.png

查看结果

4cab3824858f32e14b5b3626b587d79c.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值