首页 > 其他 > 详细

jmeter添加自定义扩展函数之小写转换大写

时间:2019-05-23 16:00:58      阅读:147      评论:0      收藏:0      [点我收藏+]

1,打开eclipse,新建maven工程,在pom中引用jmeter核心jar包,具体请看---https://www.cnblogs.com/guanyf/p/10863033.html---,这里就不再赘述

2,代码如下:

技术分享图片
package com.mytest.functions;



import org.apache.jmeter.engine.util.CompoundVariable;

import org.apache.jmeter.functions.AbstractFunction;

import org.apache.jmeter.functions.InvalidVariableException;

import org.apache.jmeter.samplers.SampleResult;

import org.apache.jmeter.samplers.Sampler;

import org.apache.jmeter.threads.JMeterVariables;



import java.util.Collection;

import java.util.LinkedList;

import java.util.List;



public class UpperCase extends AbstractFunction {



    private static final List<String> desc = new LinkedList<String>();

    private static final String KEY = "__uppercase";



    static {

        desc.add("String to convert to uppercase");

        desc.add("Name of variable in which to store the result (optional),The author is guanyf");

    }



    private Object[] values;



    /**

     * No-arg constructor.

     */

    public UpperCase() {

    }



    /**

     * {@inheritDoc}

     */

    @Override

    public synchronized String execute(SampleResult previousResult, Sampler currentSampler)

            throws InvalidVariableException {

        JMeterVariables vars = getVariables();

        String res = ((CompoundVariable) values[0]).execute().toUpperCase();



        if (vars != null && values.length > 1) {

            String varName = ((CompoundVariable) values[1]).execute().trim();

            vars.put(varName, res);

        }



        return res;



    }



    /**

     * {@inheritDoc}

     */

    @Override

    public synchronized void setParameters(Collection<CompoundVariable> parameters) throws InvalidVariableException {

        checkMinParameterCount(parameters, 1);

        values = parameters.toArray();

    }



    /**

     * {@inheritDoc}

     */

    @Override

    public String getReferenceKey() {

        return KEY;

    }



    /**

     * {@inheritDoc}

     */

    @Override

    public List<String> getArgumentDesc() {

        return desc;

    }

}
View Code

 

jmeter添加自定义扩展函数之小写转换大写

原文:https://www.cnblogs.com/guanyf/p/10912379.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!