前提条件
1.pom文件引用ApacheJMeter_functions包
<dependency>
<groupId>org.apache.jmeter</groupId>
<artifactId>ApacheJMeter_functions</artifactId>
<version>5.2.1</version>
</dependency>
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<CompoundVariable> collection) throws InvalidVariableException {
System.out.println("setParameters run!!!");
}
public String getReferenceKey() {
System.out.println("getReferenceKey run!!!");
return "__MyDemo";
}
public List<String> getArgumentDesc() {
System.out.println("getArgumentDesc run!!!");
return null;
}
示例---Jmeter查看
Step
打包jar包放到Jmeter重启Jmeter选择我们自己的函数,找到了成功了!
Result
- getReferenceKey、getArgumentDesc的println在Jmeter控制台成功打印
- 执行顺序:getReferenceKey(方法名称,一点击函数助手就运行)getArgumentDesc(功能描述、参数描述)setParameters(设置参数,接收用户传递的参数)execute(执行我们的方法)
- Jmeter报错,抛空指针