3

我试图将 groovy (Groovy 2.4.3) 添加到 JMeter 2.13。

我将所有 %groovy_home%/lib / .jar放在 %java_home%/lib/ext/groovy-lib/ .jar

我在 jmeter.property 文件中添加了类路径(search_paths=/lib/ext/groovy-lib)

问题是在启动 JMeter 后,我可以在 BSF 元素(断言、采样器等)中使用 Groovy,但 JSR223 元素(断言、采样器等)没有显示 Groovy 脚本语言选项。

BSF 显示 Groovy

JSR223 缺少 Groovy

任何帮助都会很有价值谢谢

4

3 回答 3

6

启动和运行 groovy 引擎的最简单和最简单的方法是:

  1. 从 Maven下载最新版本的 groovy-all.jar
  2. 将其放到 JMeter 安装的 /lib 文件夹中。/lib/ext 文件夹实际上是 JMeter 核心和扩展)
  3. 如果 JMeter 正在运行,则重新启动它(jar 拾取过程不是动态的,它也适用于任何其他库,如Jmeter PluginsJUnit 测试、user.properties 文件更改等)
  4. 重新启动后,您应该会看到 groovy 以及括号中的 .jar 版本
于 2015-05-24T08:33:52.397 回答
4

您必须使用 user.classpath 和 groovy-all-xxx.jar

JMeter 将搜索实用程序和插件依赖类的路径列表。使用您的平台路径分隔符(根据系统属性“ path.separator ”)分隔多个路径。路径项可以是 jar 文件或目录。此类目录中的任何 jar 文件都将自动包含在内,子目录中的 jar 文件将被忽略。给定的值是在 lib 目录中找到的任何 jar 之外的值。所有条目都将添加到系统类加载器的类路径以及 JMeter 内部加载器的路径中。带空格的路径可能会导致 JVM 出现问题

所以应该是:

user.classpath=/lib/ext/groovy-lib/groovy-all-xxx.jar

于 2015-05-23T14:07:25.103 回答
0

您还可以在 $JAVA_HOME/jre/lib/ext 中安装实用程序 Jar 文件,或者您可以在 jmeter.properties 中设置属性 user.classpath

请注意,设置 CLASSPATH 环境变量将不起作用。这是因为 JMeter 以“java -jar”启动,而 java 命令会默默地忽略 CLASSPATH 变量,以及使用 -jar 时的 -classpath/-cp 选项。[这发生在所有 Java 程序中,而不仅仅是 JMeter。]

据此,但对我来说,很神奇:只需在 jmeter.properties 中编辑 user.classpath 属性。

user.classpath="YOUR-GROOVY-HOME-DIR"/lib

令人惊讶的是,使用 $GROOVY_HOME 不起作用,我不得不提到 groovy 主路径而不是引用系统环境变量,并且正如@ubik-load-pack提到的,如果您需要将更多项目添加到此属性中,请使用您的操作系统类路径分隔符(Linux=":", Windows=";")

于 2015-08-05T14:18:31.613 回答