一点点,运用JMeter进行功能测验 —"Java恳求"方法,霹雳火

JMeter是Apache安排的开放源代码项目,它是功用和功用检验的东西,100%的用java完成,咱们能够到官网下载源代码和检查相关文档。

关于运用JMeter进行JDBC数据库检验、HTTP央求接口检验、结合Badboy录好汉春香制功用进行网站功用检验等内容,网上的材料比较丰富,这儿就暂时不做介绍了。更有用和灵敏的场景,是有用咱们自己编写的jar包进行检验,这也便是"Java央求"办法的检验。这儿首要记载一下我在学习这种检验西江月办法时遇到的一些问题,和整体流程,算作一个记载和小总结。

一、中心过程

1.创立一个Java工程;

在eclipse里边新建一个工程:JavaForJMeter

2.将JMeter的lib目录下的jar文件增加进此工程的Build Path;

ApacheJMeter_core.jar(有必要)、ApacheJMeter_java.jar(有必要)、avalon-framework-4.1.4.jar、jorphan.jar、logkit-2.0.jar,后台3个为本地调试需求用到的包文件。

3. 创立一个类并完成JavaSamplerClient接口或承继AbstractJavaSamplerClient,并重写;

构建待检验类,增加类Hello,代码如下:

package com.test.webservice;

public class Hello {

public String sayHello()

{

return "Hello";

}

public String sa单机游戏排行榜yHelloToPerson(String s)

{

if(s == null || s.equals(""))

s绕组词 = "nobody";

return (new StringBuilder()).append("Hello ").append(s).toString();

}

public int sum(int a,int b)

{

return网易云音乐网页版 a+b;

}

}

public Arguments getDefaultParameters();设置可用参数及的默认值;public void setupTest(JavaSamplerContext arg0):每个线程检验前履行一次,做一些初始化作业;public SampleResult runTest(JavaSamplerContext arg0):开端检验,从arg0参数能够获得参数值;public void teardownTest(Java西安鼎德宝Samplreadbook注册码erContext arg0):检验完毕时调用;

增加类perftest,并承继AbstractJavaSamplerClient,并增加代码如下:

package com.test.webservice;

import org.apache.jmeter.co字谜语大全及答案nfig.Arguments;

import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;

import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;

import org.apache.jmeter.samplers.SampleResult;

import com.test.webservice.Hello;

public class perftest extends AbstractJavaSamplerClient {

private String a;

private String b;

/** Holds the result data (shown as Response Data in the Tree display). */

private Str志明与春娇ing resultData;

// 这个办法是用来自定义java办法入参的。

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

//设置可用参数及的默认值;

public Arguments getDefaultParameters() {

Arguments params = new Arguments();

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

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

return params;

}

//每个线程检验前履行一次,做一些初始化作业;

public void setupTest(JavaSamplerContext arg0) {

}

//开端检验,从arg0参数能够获得参数值;

public SampleResult runTest(JavaSamplerContext arg0) {

a 巧克力与香子兰= arg0.getParameter("num1");

b = arg0.getParameter("num2")hs;

Sa啪啪姿态mpleResult sr = new SampleResult();

sr.setSampleLabel( "Java央求哦");

try {

sr.sampleStart();// jmeter 开端核算呼应时刻符号

Hello test = new Hel一点点,运用JMeter进行功用检验 —"Java央求"办法,霹雳火lo();

// 经过下面的操作就能够将被测办法的呼应输出到Jmeter的观察结果树中的呼应数据里边了。

resultData = String.valueOf(test.sum(Integer.parseInt(a), Integer

.parseInt(b)));

if (resultData != null && resultData.length() > 0) {

sr.setResponseData("结果是人死了会去哪里:"+resultData, null);

sr.setDat弗萨卡aT一点点,运用JMeter进行功用检验 —"Java央求"办法,霹雳火ype(SampleResul一点点,运用JMeter进行功用检验 —"Java央求"办法,霹雳火t.TEXT);

}

// System.out.println(resultData);

sr.setSuccessful(true);

} catch (Throwable e)一点点,运用JMeter进行功用检验 —"Java央求"办法,霹雳火 {

sr.setSuccessful(false);

e.printStackTrace();

} finally {

sr.sampleEnd();// jmeter 完毕核算呼应时刻符号

}

return sr;

}

//检验完毕时调用;

public void teardownTest(JavaSamplerContext arg0) {

// System.out.println(end);

// System.out.prid2757ntln("The cost is"+(end-start)/1000);

}

// main仅仅为了调试用,一点点,运用JMeter进行功用检验 —"Java央求"办法,霹雳火最终打jar包的时分注释掉。

/*

public static void main(String[] args)

{ // TODO Auto-generated method stub

Arguments params = new Arguments();

params.addAr一点点,运用JMeter进行功用检验 —"Java央求"办法,霹雳火gument("num1", "1");//设置参数,并赋予默认值1

params.addArgument("num2", "2");//设置参数,并赋予默认值2

JavaSamplerContext arg0 = new JavaSamplerContext(params);

perftestbbb test = new perftestbbb();

test毒爱纯男.setupTest(arg0);

test.runTest(arg0);

test.teardo西普大陆免费送最强号wnTest(arg0);

}

*/

}

4.Export为Runnable Jar File:Hello.jar

5.将此Hello.jar包放入J肌肉酸痛METER_HOME\li韩国道德2017b\ext目录;

6.以管理员身份翻开JMeter;

7.创立线程组、Java Request、检查结果树,进行检验;

总结:

这儿有两点需求留意:

1. 假如你的jar依靠了其他第三方jar,需求将其一同放到lib/ext下,不然会呈现ClassNotFound过错,一点点,运用JMeter进行功用检验 —"Java央求"办法,霹雳火这个问题也是困扰了我良久;

2. 假如在将jar放入lib/ext后,你仍是无法找到你编写的类,且此刻你是开着JMeter的,则需求重启一下JMeter。

以上便是运用JMeter的Java央求办法进行一个检验方案构建的全过程了,都是比较根底的办法,假如需求什么额定的功用还能够渐渐学习。尽管自己也有写多线程并发的客户端检验代码,并自己搜集response time等,核算TPS,但明显运用JMeter的办法愈加便利,由于你只需求依照单线程的办法去完成你的检验事务,也无需增加各种埋点搜集数据。

综上,感觉JMeter仍是很强壮的,最近计划多学习一点,对今后写代码,自我检验功用也是很有协助的,再合作jProfiler的运用,能够很好的确保Java代码的功率和功用。当然,东西只能"如虎添翼",最底子的仍是需求咱们自己能够编写出高质量的代码!

标签: 三国之召唤猛将 dfu

演示站
上一篇:华清池,龙光地产2018年中心赢利大增65.7%至76.55亿元 内房股排名第9位,246天天好彩
下一篇:163邮箱登陆,视觉我国致歉:对渠道内容产品效劳全面筛查,cba赛程

相关推荐