dubbo接口功能介紹
客戶端輸入uncleyong(當然,也可以是其他字符串),服務端返回hello uncleyong
此dubbo接口開發:https://www.cnblogs.com/uncleyong/p/10732747.html
開發dubbo服務jmeter客戶端
idea中創建模塊dubbo_jmeter5
默認輸入uncleyong,也可以修改這個值
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; } }
jmeter客戶端打jar包
項目的target目錄下
將上面的jar包復制到jmeter的ext目錄下,即:D:\apache-jmeter-5.1.1\lib\ext
jmeter測試dubbo接口
啟動zookeeper、provider
重新啟動jemter
添加線程組、java取樣器、查看結果樹后,
選擇上面編寫的類,展示了我們設置的參數名和參數值
運行腳本
運行結果,返回:From dubbo provider:hello, Uncleyong
修改參數值,改為jenkins
再次運行,返回:From dubbo provider:hello, jenkins
至此,jmeter測試dubbo接口的腳本開發完成。