1.准备工作
开发jmeter的java插件需要引入两个包"ApacheJMeter_core.jar"和"ApacheJMeter_java.jar",位于Jmeter的安装目录lib/ext 下
在java工程中,导入这两个包
2.开发步骤
jmeter插件需要继承 AbstractJavaSamplerClient,这点需要注意,如果不继承,那么这个开发包在jmeter的选项中将不可见
继承"AbstractJavaSamplerClient"类,会获得"getDefaultParameters","setupTest","runTest"和"teardownTest"方法
3.代码
package cn.customer.jmeter;
import java.security.MessageDigest;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.security.MessageDigest;
import java.sql.DriverManager;
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 cn.customer.jmeter.Util;
/**
*
* @author Alex
*/
public class DoSign extends AbstractJavaSamplerClient {
/* 声明全局变量 取样器结果集 和默认参数 */
private SampleResult results;
private String defautargs;
private String ip;
private String port;
private String dbname;
private String username;
private String password;
private String tbname;
private String rowindex;
private String secrect;
private String transparams;
/* Implements JavaSamplerClient.setupTest(JavaSamplerContext) */
public void setupTest(JavaSamplerContext arg0) {
results = new SampleResult();
results.setSamplerData(toString());
results.setDataType("text");
results.setContentType("text/plain");
results.setDataEncoding("UTF-8");
results.setSuccessful(true);
results.setResponseMessageOK();
results.setResponseCodeOK();
defautargs = arg0.getParameter("defautargs", "");
if (defautargs != null && defautargs.length() > 0) {
results.setSamplerData(defautargs);
}
}
/* Implements JavaSamplerClient.teardownTest(JavaSamplerContext) */
public void teardownTest(JavaSamplerContext arg0) {
System.out.println("treaddown");
}
/* Implements JavaSamplerClient.getDefaultParameters() */
public Arguments getDefaultParameters() {
Arguments params = new Arguments();
params.addArgument("ip", "172.30.100.12"); // 定义一个参数,显示到Jmeter的参数列表中,第一个参数为参数默认的显示名称,第二个参数为默认值
params.addArgument("port", "3388");
params.addArgument("dbname", "qatest");

本文介绍了如何开发JMeter的Java插件。首先,需要引入'ApacheJMeter_core.jar'和'ApacheJMeter_java.jar'依赖。开发过程中,自定义插件需继承AbstractJavaSamplerClient,实现相关方法。在代码中,插件执行了签名处理并返回结果,可进行参数化配置,同时处理可能的辅助参数如时间戳、cookie和sessionid。签名处理和参数处理逻辑封装在Util包中。
最低0.47元/天 解锁文章
438

被折叠的 条评论
为什么被折叠?



