Jmeter压力测试-自定义java请求

这里简单说明一下怎么自定义java请求,并利用jmeter做压力测试,希望不仅对测试人员,对开发人员也有帮助。

1 创建java请求类

1) 在eclipse中创建一个java项目

2) 导入Jmeterhome/lib/ext下的两个包:ApacheJMeter_java.jar和ApacheJMeter_core.jar

3) 创建一个继承于AbstractJavaSamplerClient的java类

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;
public class javaRequest extends AbstractJavaSamplerClient {
       //自定义变量
       private SampleResult results;
       private String var1=null;
       private String var2=null;    
   
      //设置传入的参数,可以设置多个,已设置的参数会显示到Jmeter的参数列表中
     @Override
      public Arguments getDefaultParameters() {
          Arguments params = new Arguments();
          params.addArgument("param1","");
          params.addArgument("param2","");
          return params;
      }

        //初始化方法,实际运行时每个线程仅执行一次,在测试方法运行前执行
        @Override
      public void setupTest(JavaSamplerContext arg0){
             //以下是举例代码
            results = new SampleResult();
            var1 = arg0.getParameter("param1");   //获取在Jmeter中设置的参数值
            if (var1 != null && var1.length() > 0) {
                results.setSamplerData(var1);
            }
            var2=arg0.getParameter("param2");
            if (var2 != null && var2.length() > 0) {
                results.setSamplerData(var2);
             }
        }

        //测试执行的循环体,根据线程数和循环次数的不同可执行多次
        @Override
        public SampleResult runTest(JavaSamplerContext arg0) {
            SampleResult result = new SampleResult();

                boolean success = true;
                //事务的起点
                result.sampleStart();

                // 这里可引用var1、var2编写您的测试代码.

                //事务的终点
                result.sampleEnd();
                //设置本次事务成功或失败
                result.setSuccessful(success);

                return result;

        }

      //结束方法,实际运行时每个线程仅执行一次,在测试方法运行结束后执行
        @Override
        public void teardownTest(JavaSamplerContext arg0){
            driver.quit();
              String verificationErrorString = verificationErrors.toString();
              if (!"".equals(verificationErrorString)) {
                fail(verificationErrorString);
                System.out.println(verificationErrorString); 

              }
        super.teardownTest(arg0);
        }
}

2 引入jar包

将以上project导出为jar包,放到jmeter/lib/ext下,重启jmeter。

3 添加线性组

添加线性组

4 添加java request

添加java request

选择自定义的类,设置对应的参数值。

选择自定义的类

5 添加监控

聚合报告:

聚合报告

服务器参数监控:

服务器监控

转载于:https://my.oschina.net/u/2516426/blog/740642

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值