1

我试过在 jmeter 中运行 java 类。
我在 BSF 预处理器中放置了 java 代码。
但是出现了以下错误:

ERROR - org.apache.bsf.BSFManager: Exception : java.lang.ClassNotFoundException: org.apache.bsf.engines.java.JavaEngine
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190

我已经尝试过这个链接来包含 jar 文件。但我不知道我需要包含哪个 jar 文件。

有人可以告诉我在 jmeter 中运行 java 类包含哪个 jar 文件吗?

4

2 回答 2

1

Which versoin of jmeter are you using? With 2.9 jsr 223 pre-processor using java language is working fine for me. I think the jsr223-* elements are superseding beanchell-* and BSF-* elements so you can give it a try.

java and beanshell btw are claimed slow if you have it executed a lot. You can use groovy and JSR223 preprocesor. You can see about caching the compiled code in the JSR223 sampler docs.

Beanshell and groovy are mostly java code compatible so you can use java code with them but not entirely. Anything more complicated in pure java can fail to compile in groovy and/or beanshell.

If you use pure java, then it makes sense to use the Java Request sampler if you can instead of a pre-processor. If technically hard to achieve, the fastest option seems to use groovy with jsr223 pre-processor and caching the compiled code.

Hope this helps.

于 2013-04-26T15:07:59.587 回答
1

最好使用 Beanshell 而不是 Java。

BSF 中似乎存在封装问题,请参阅

同时,您可以从http://wi.wu-wien.ac.at/rgf/rexx/bsf4rexx/获得适用于 BSF 2.4 的所有 BSF 引擎(以及稍微高级的 BSF 2.4 版本)的二进制发行版 当前/BSF4Rexx_install.zip。解压该 zip 存档后,您将找到一个名为“bsf-v244-20080704.jar”的 jar 文件。只需将官方 BSF 2.4 替换为该版本(其中包含所有官方引擎以及“BSF_Log”和“BSF_LogFactory”)。

提到的罐子也有一些问题。

无论如何,为了性能和最新代码,最好使用 JSR223 Sampler + Groovy + 填写 Compilation Cache Key

于 2013-04-23T21:02:19.790 回答