jmeter-7-编写java代码生成jar包引用

简介:有时候我们可能需要拓展jmeter里面的功能,比如数据处理后jmeter请求发送。

签名、认证等场景都会使用到。

一、创建 java 项目,编写代码及打包jar

1、new project,选择maven

 2、写个简单demo,批量生成UUID

复制代码
package com.ppl;

import java.util.ArrayList;
import java.util.List;
import java.util.UUID;

public class Common {

    public static String uuid() {
        // 生成单个 uuid
        return UUID.randomUUID().toString();
    }

    public static List<String> uuid(int count) {
        // 生成 uuids 列表
        List<String> uuids = new ArrayList<>();
        for (int i = 0; i < count; i++) {
            uuids.add(uuid());
        }
        return uuids;
    }
}
复制代码

3、pom.xml 有依赖其它包的话则需要加上:

这样子maven打包会将所依赖的jar包打入。

复制代码
    <build>
        <plugins>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <configuration>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                </configuration>
                <executions>
                    <execution>
                        <id>make-assembly</id>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
复制代码

4、maven 构建:package

构建后可以看到有两个jar包,一个是打入依赖(xxx-dependencies.jar),一个是没有。

 二、Jmeter引用jar包及使用自定义jar类

 1、将jar包粘贴至,jmeter 的 lib/ext 目录下即可

2、重启 jmeter 或直接打开新的 jmeter 客户端

3、Jmeter 请求中新增:BeanShell 预处理程序

并写入代码 (貌似 BeanShell 不能够使用泛型否则会报错警告)

这里可能会有疑问,BeanShell 咋写?其实就和 java 一样,比如我在IDEA下编写并测试,如下:

那么 BeanShell 也是一样是这样写。

 4、变量存储及引用

  • vars:线程内共享
  • props:跨线程共享

vars.put("uuidList", uuids);  表示将 uuids 变量存储为线程内共享,并命名为:uuidList

 这里只是做个简单的演示,至于数据要处理成什么样是根据当前需求需要来编写的,比如简介中说的加签、安全认证等。

End

posted @   广深-小龙  阅读(144)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示