客戶端輸入uncleyong(固然,也能夠是其餘字符串),服務端返回hello uncleyongjava
idea中建立模塊dubbo_jmeter5spring
默認輸入uncleyong,也能夠修改這個值apache
package com.uncleyong.dubbotest; import com.uncleyong.dubbotest.service.SayHelloToClient; 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 org.springframework.context.support.ClassPathXmlApplicationContext; public class DubboJmeterNotFixArgs extends AbstractJavaSamplerClient { String param = "UncleYong"; public Arguments getDefaultParameters(){ Arguments params = new Arguments(); params.addArgument("name", param); System.out.println(params); return params; } public void setValues(JavaSamplerContext args){ param = args.getParameter("name",param); } public SampleResult runTest(JavaSamplerContext args) { setValues(args); SampleResult sr = new SampleResult(); ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext( new String[] { "dubbo_jmeter.xml" }); sr.sampleStart(); context.start(); // 啓動上下文 SayHelloToClient say = (SayHelloToClient) context.getBean("sayhellotoclient"); String out = say.sayHello(param); sr.setResponseData("From dubbo provider:" + out, null); sr.setDataType(SampleResult.TEXT); sr.setSuccessful(true); return sr; } }
項目的target目錄下ide
將上面的jar包複製到jmeter的ext目錄下,即:D:\apache-jmeter-5.1.1\lib\ext測試
啓動zookeeper、provideridea
從新啓動jemterspa
添加線程組、java取樣器、查看結果樹後,線程
選擇上面編寫的類,展現了咱們設置的參數名和參數值3d
運行腳本xml
運行結果,返回:From dubbo provider:hello, Uncleyong
修改參數值,改成jenkins
再次運行,返回:From dubbo provider:hello, jenkins
至此,jmeter測試dubbo接口的腳本開發完成。
加羣獲取