jmeter自定义函数

ops/2024/10/30 5:44:32/

jmeter本身带有很多内带的函数,功能很强大,但是更强大的是,jmeter还可以扩展,让用户自定义函数。

下面来看下自定义函数是怎么做的。

需要在org.apache.jmeter.functions包中,添加我们的自定义函数,函数模板如下:

package org.fast.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 myFunction extends AbstractFunction{@Overridepublic String execute(SampleResult result, Sampler sampler) throws InvalidVariableException{return "jmeter函数";}@Overridepublic void setParameters(Collection<CompoundVariable> collection) throws InvalidVariableException{checkParameterCount(collection,0,0);}@Overridepublic String getReferenceKey(){return "__NewFunction";}@Overridepublic List<String> getArgumentDesc(){return desc;}}

对以上代码按照自己的需求重构并打成jar包

package org.fast.jmeter.functions;import org.apache.jmeter.engine.util.CompoundVariable;
import org.apache.jmeter.functions.AbstractFunction;
import org.apache.jmeter.functions.InvalidVariableFunction;
import org.apache.jmeter.samplers.SampleResult;
import org.apache.jmeter.samplers.Sample;
import org.fast.jmeter.functions.RandomString;import java.util.LinkedList;
import java.util.Collection;
import java.util.List;@SuppressWarnings("unchecked")
public class RandomMail extends AbstractFunction{@Overridepublic String execute(SampleResult result, Sampler sample) throws InvalidVariableException{...}@Overridepublic void setParameters(Collection<CompoundVariable> collection) throws InvalidVariableException{checkParameterCount(collection,0,0);}@Overridepublic String getReferencKey(){return "__NewFunction";}public String getArgumentDesc(){return new LinkedList();}

接下来把打包好的jar包放到${jmeter_home}/lib/ext目录下,重启jmeter,打开函数助手,可以看到有RandomMail这个函数在列。

这样自定义函数就做好了。


http://www.ppmy.cn/ops/129504.html

相关文章

Bash、sh 和 Shell都弄混了?

在Linux和Unix系统中&#xff0c;Bash、sh 和 Shell 都与命令行解释器相关&#xff0c;但它们各自的含义和作用略有不同。以下是它们之间的关系和区别&#xff1a; Shell Shell 是一个通用术语&#xff0c;指的是操作系统中负责解释和执行用户命令的程序。它是用户与操作系统…

用网页制作安装包——解密微软那些使用网页的exe

我们见到的很多exe软件其实都是html做的ui 一、微软visual studio 安装解析 打开html文件 二、使用网页制作的软件很多 可牛&#xff0c;微软开发软件 win98桌面背景 常见的文件格式hta 三、hta 网页应用程序 HTA属性 播报 编辑 HTA与普通的网页结构差不多&#xff0c…

Apache POI—读写Office格式文件

Apache POI 是一个开源的 Java 库&#xff0c;用于读写 Microsoft Office 格式的文件&#xff0c;主要包括 Excel、Word 和 PowerPoint 等文档。POI 对 Excel 文件的支持最为完善&#xff0c;通过 POI 可以方便地进行 Excel 文件的创建、编辑、读取等操作。 1. Apache POI 简介…

【Java SpringIOC与ID随感录】 基于 XML 的 Bean 装配

前言 我们知道了 Spring 是⼀个开源框架&#xff0c;他让我们的开发更加简单。他⽀持⼴泛的应⽤场 景&#xff0c;有着活跃⽽庞⼤的社区&#xff0c;这也是 Spring 能够⻓久不衰的原因。 这里来举个例子&#xff1a; 开发业务逻辑层一般是&#xff1a;控制层、业务逻辑层、持久…

赛博威携手百度智能云,开启数字营销新未来

近日&#xff0c;赛博威集团华东大区苏州百捷信息科技&#xff08;以下简称“赛博威”&#xff09;与百度智能云正式达成解决方案销售伙伴关系&#xff0c;双方将在人工智能、大数据与云计算领域深度合作&#xff0c;为客户提供更全面、更高效、更智能的数字营销解决方案&#…

Vue3使用AntV | X6绘制流程图:开箱即用

x6官方地址X6图编辑引擎 | AntV 官方文档仔细地介绍了很多丰富的功能&#xff0c;这里的demo可以满足基本的使用&#xff0c;具体拓展还需要仔细看文档内容 先上效果图 1、安装 通过 npm 或 yarn 命令安装 X6。 # npm npm install antv/x6 --save# yarn yarn add antv/x6 …

[瑞吉外卖]-09数据库优化

MySql主从复制 介绍 当前项目中, 数据库的读和写都由一台数据库承担&#xff0c;压力大, 数据库服务器磁盘损坏则数据丢失&#xff0c;造成单点故障 MySQL主从复制是一个异步的复制过程&#xff0c;底层是基于Mysql数据库自带的二进制日志功能。 就是一台或多台MySOL数据库(s…

通用爬虫设计思路

目录 设计思路1. 功能模块2. 技术栈3. 架构设计 实现步骤其他考虑 设计一个通用爬虫需要考虑多种网站结构和数据类型的适应性。以下是一个通用爬虫的设计思路&#xff0c;包括功能模块、架构和实现步骤&#xff1a; 设计思路 1. 功能模块 配置模块&#xff1a; 支持用户输入目…