jmeter进阶之Beanshell引用Java代码

2023-08-01,,

在Jmeter实际的使用中,根据业务往往需要构造一些数据源,比如虚拟用户的账号信息等,为了快速灵活,较好的方式往往是通过代码来辅助生产数据。

故在Jmeter支持的众多 sampler 或 前/后置处理器 中,一般借助 Beanshell(推荐) 或 JSR223 等来实现。(源码示例为随机生成中国地区的手机号)

对于 Beanshell,一般调用 Java 源码的方式有三种:

通过 beanshell sampler or PreProcesser or PostProcesser 直接进行 Java 编码
通过 beanshell sampler or PreProcesser or PostProcesser 引入本地 Java 源码文件
通过导入的 jar 包,在beanshell sampler or PreProcesser or PostProcesser 中进行源码的调用(推荐)

方法一:通过 beanshell sampler 直接进行 Java 编码

方法二:通过 beanshell 引入本地 Java 源码文件

如图示,先将源代码存放在本地的目录,然后通过 beanshell 的关键字加载之。

#加载源码文件
source("/Users/hailongchen/Documents/workspace/hailongchen/src/main/java/utils/PhoneNoGenerateUtil.java");
#调用源码程序(略)
#使用 beanshell 存/取 变量
vars.put();
vars.get();

方法三:通过导入的 jar 包,在beanshell sampler中进行源码的调用

Demo如图示:

具体步骤参考:

    先通过 jdk 的命令或者借助 IDE 编译器的功能,生成 jar 包(一般不需要生成可执行 jar 包)

    将 jar 包放入 jmeter 的目录,并修改 jmeter.properties 文件(自行度娘)

    启动 jmeter,在测试计划中,导入 jar 路径(该步骤可能不需要,可测试确认)

    创建 beanshell 组件,按需引用源码(需要注意源码的 package 路径,图示为源码在 package 名称为 utils,类文件名称为 PhoneNoGenerateUtil)

    在 Beanshell 中调用 所引用 jar包的代码(见 demo)

jmeter进阶之Beanshell引用Java代码的相关教程结束。

《jmeter进阶之Beanshell引用Java代码.doc》

下载本文的Word格式文档,以方便收藏与打印。