jmeter的函数中,存在很多函数,帮助使用者快速使用,比如生成随机数 ${__Random(1,2,)},当前时间 ${__time(ddHHmmss,)}等等。
这个函数可以在jmeter源码中可以进行新增。下面主要讲解新增方式:
代码需要写在 src/functions包
package org.apache.jmeter.functions
如果要增加函数,则需要继承
public class MyAdd extends AbstractFunction{
AbstractFunction:是个抽象类
public abstract class AbstractFunction implements Function {
需要重写如下方法:
//1. 执行方法,即需要如何运行,得到结果
public String execute(SampleResult previousResult, Sampler currentSampler)
// 2. 获取值的,这里获取值,是通过 Collection<CompoundVariable>。数据结构:CompoundVariable,封装了 private String permanentResults
@Override
public void setParameters(Collection<CompoundVariable> parameters)
//3. 注册 key的。。即这个函数名字叫什么,如random则是
private static final String KEY = "__Random";
@Override
public String getReferenceKey() {
// TODO Auto-generated method stub
return KEY;
}
//4. 写描述的,需要的描述返回。这里强烈建议,在org.apache.jmeter.resources 中,在mess