Jmeter扩展组件开发(8) - 函数助手扩展开发demo


前提条件

1.pom文件引用ApacheJMeter_functions包


org.apache.jmeter
ApacheJMeter_functions
5.2.1

2.新建一个package,注意:包名必须为functions,不然函数助手找不到

3.新建的Java class继承AbstractFunction类;类下面四个方法必须全部实现

四个方法简介

  • execute:执行方法
  • setParameters:设置参数。接受用户传递的参数
  • getReferenceKey:功能名称,叫啥名字,就选的时候展示的那个名字;重点:名字必须是“__???”两个下划线打头
  • getArgumentDesc:功能、参数描述

示例---敲代码

public String execute(SampleResult sampleResult, Sampler sampler) throws InvalidVariableException {
System.out.println("execute run!!!");
return null;
}

public void setParameters(Collection collection) throws InvalidVariableException {
System.out.println("setParameters run!!!");
}

public String getReferenceKey() {
System.out.println("getReferenceKey run!!!");
return "__MyDemo";
}

public List getArgumentDesc() {
System.out.println("getArgumentDesc run!!!");
return null;
}

示例---Jmeter查看

Step

打包??jar包放到Jmeter??重启Jmeter??选择我们自己的函数,找到了成功了!

Result

  • getReferenceKey、getArgumentDesc的println在Jmeter控制台成功打印
  • 执行顺序:getReferenceKey(方法名称,一点击函数助手就运行)??getArgumentDesc(功能描述、参数描述)??setParameters(设置参数,接收用户传递的参数)execute(执行我们的方法)
  • Jmeter报错,抛空指针