jmeter进阶之Beanshell引用Java代码
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
jmeter进阶之Beanshell引⽤Java代码
在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如图⽰:
具体步骤参考:
1. 先通过 jdk 的命令或者借助 IDE 编译器的功能,⽣成 jar 包(⼀般不需要⽣成可执⾏ jar 包)
2. 将 jar 包放⼊ jmeter 的⽬录,并修改 jmeter.properties ⽂件(⾃⾏度娘)
3. 启动 jmeter,在测试计划中,导⼊ jar 路径(该步骤可能不需要,可测试确认)
4. 创建 beanshell 组件,按需引⽤源码(需要注意源码的 package 路径,图⽰为源码在 package 名称为 utils,类⽂件名称为 PhoneNoGenerateUtil)
5. 在 Beanshell 中调⽤所引⽤ jar包的代码(见 demo)。