首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

Jmeter二次开发函数 - 文本替换

编程知识
2024年07月31日 13:57

此篇文章将在Jmeter创建一个新函数,实现替换文本中的指定内容功能。效果图如下

 

1、eclipse项目创建步骤此处省略,可参考上一篇Jmeter二次开发函数之入门

2、新建class命名为“TextReplaceFunction”,并继承jmeter自带的AbstractFunction

3、新生成文件TextReplaceFunction.java继承jmeter的AbstractFunction带出4个方法,函数开发就是在这4个方法上改造

4、TextReplaceFunction.java,功能实现的完整代码如下

package org.apache.jmeter.functions;
import java.util.Collection;
import java.util.LinkedList;
import java.util.List;
import org.apache.jmeter.engine.util.CompoundVariable;
import org.apache.jmeter.samplers.SampleResult;
import org.apache.jmeter.samplers.Sampler;

public class TextReplaceFunction extends AbstractFunction {
    private final static String key="__TextReplace";
    private static List<String> strParams=new LinkedList<String>();
    static
    {
        strParams.add("原始文本(必填)");
        strParams.add("被替换内容(必填)");
        strParams.add("替换为(必填)");
    }
    public String originalText="";
    public String text="";
    public String ReplaceText="";
    
    @Override
    public List<String> getArgumentDesc() {
        return strParams;
    }

    @Override
    public String execute(SampleResult arg0, Sampler arg1) throws InvalidVariableException {
        String result = originalText.replaceAll(text, ReplaceText);
        return result;
    }

    @Override
    public String getReferenceKey() {
        return key;
    }

    @Override
    public void setParameters(Collection<CompoundVariable> arg0) throws InvalidVariableException {
        checkParameterCount(arg0,3);
        Object[] data=arg0.toArray();
        originalText=((CompoundVariable)data[0]).execute();
        text=((CompoundVariable)data[1]).execute();
        ReplaceText=((CompoundVariable)data[2]).execute();
    }
}

5、TextReplaceFunction.java文件右键导出jar包

选择java->JAR file,点击next

保存到jmeter安装目录下\apache-jmeter-5.5\lib\ext\TextReplaceFunction.jar

 6、重启jmeter,打开函数助手就能看到多了一个TextReplace函数 

查看TextReplace函数有3个参数

 7、TextReplace函数使用效果

 

From:https://www.cnblogs.com/dabeen/p/18334641
本文地址: http://shuzixingkong.net/article/627
0评论
提交 加载更多评论
其他文章 ambari+ bigtop 编译、打包、部署步骤总览
1 ambari + bigtop 构建大数据基础平台 1.1 参考: 1.2 参考 amabri bigtop 打包部署 2 ambari+bigtop编译、打包、部署 2.0 基础环境准备 2.1 ambari编译 2.2 ambari-metrics编译 2.3 bigtop编译 2.4 制作
Net8将Serilog日志推送ES,附视频
这是一个Serilog的实践Demo,包括了区别记录存放,AOP 日志记录,EF 执行记录,并且将日志推送到Elastic Search。 说在前面的话 自从AI出来之后,学习的曲线瞬间变缓了,学习的路径也有了很大的变化。 与本人来说以前大多数都先知晓理论再找相关的框架官网或博客,然后去实践Demo
Net8将Serilog日志推送ES,附视频 Net8将Serilog日志推送ES,附视频 Net8将Serilog日志推送ES,附视频
如何在Linux云服务器上通过Docker Compose部署安装Halo,搭建个人博客网站?
目录前置步骤环境搭建创建容器组在系统任意位置创建一个文件夹创建docker-compose.yaml启动 Halo 服务配置反向代理以及域名解析Halo初始化页面。更新新版本的halo 前置步骤 首先你需要一套linux服务器,这里默认你已经有了。如果没有可以在云服务器优惠合集选择,如果你是个人博客
我用Awesome-Graphs看论文:解读Naiad
这次向大家分享Microsoft发表在SOSP'13的另一篇关于流处理系统论文Naiad,TimelyDataflow是它的开源实现。该论文促进了后续的流图系统的设计与创新,从其调度框架设计中也可以看到TuGraph Analytics调度器的影子。
我用Awesome-Graphs看论文:解读Naiad 我用Awesome-Graphs看论文:解读Naiad 我用Awesome-Graphs看论文:解读Naiad
我的编程经历,从天桥地摊Basic到西藏阿里的.Net AOT。(一,从井到Sharp)
小霸王学习机附带有basic语言, 我想当然的打了一个 print 'what's your name?' ,它却没有给我期望的答案,直到16年后才由 siri 给出了回答。1995年,《电子游戏软件》做了三期连载,叫《世嘉五代与超级任天堂的对比报告》
我的编程经历,从天桥地摊Basic到西藏阿里的.Net AOT。(一,从井到Sharp)
ComfyUI插件:ComfyUI layer style 节点(一)
前言: 学习ComfyUI是一场持久战,而ComfyUI layer style 是一组专为图片设计制作且集成了Photoshop功能的强大节点。该节点几乎将PhotoShop的全部功能迁移到ComfyUI,诸如提供仿照Adobe Photoshop的图层样式、提供调整颜色功能(亮度、饱和度、对比度
ComfyUI插件:ComfyUI layer style 节点(一) ComfyUI插件:ComfyUI layer style 节点(一) ComfyUI插件:ComfyUI layer style 节点(一)
探索Amazon S3:存储解决方案的基石(Amazon S3使用记录)
探索Amazon S3:存储解决方案的基石 本文为上一篇minio使用的衍生版 相关链接:1.https://www.cnblogs.com/ComfortableM/p/18286363 ​ 2.https://blog.csdn.net/zizai_a/article/details/14079
探索Amazon S3:存储解决方案的基石(Amazon S3使用记录) 探索Amazon S3:存储解决方案的基石(Amazon S3使用记录) 探索Amazon S3:存储解决方案的基石(Amazon S3使用记录)
【杂谈】JPA乐观锁改悲观锁遇到的一些问题与思考
背景 接过一个外包的项目,该项目使用JPA作为ORM。 项目中有多个entity带有@version字段 当并发高的时候经常报乐观锁错误OptimisticLocingFailureException 原理知识 JPA的@version是通过在SQL语句上做手脚来实现乐观锁的 UPDATE tabl