变化
版本 5.4.3
概括
此版本是针对漏洞 CVE-2021-45105 的修复版本:Apache Log4j2 版本 2.0-alpha1 到 2.16.0(不包括 2.12.3)不能防止不受控制的自引用查找递归。这允许控制线程上下文映射数据的攻击者在解释精心制作的字符串时导致拒绝服务。
新的和值得注意的
用户体验改进
不兼容的更改
改进
HTTP 采样器和测试脚本记录器
其他采样器
控制器
听众
计时器、断言、配置、前处理器和后处理器
职能
I18N
报告/仪表板
一般的
非功能性变化
- 将 Apache Log4j2 更新到 2.17.0(从 2.16.0)。
Bug修复
HTTP 采样器和测试脚本记录器
其他采样器
控制器
听众
计时器、断言、配置、前处理器和后处理器
职能
I18N
报告/仪表板
文档
一般的
谢谢
我们感谢上述错误和改进部分中提到的所有贡献者:
我们还要感谢帮助我们改进 JMeter 的错误报告者。
如果我们遗漏了其他任何人,我们深表歉意。
已知问题和解决方法
- Once Only 控制器在线程组或循环控制器下的行为正确,但除此之外它的行为不一致(或明确指定)。
- 绿框左侧出现的数字是活动线程数/总线程数,总线程数只适用于本地运行的测试,否则显示为0(见 Bug 55510)。
-
请注意,在某些 Windows 系统下,您可能会收到以下警告:
java.util.prefs.WindowsPreferences WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0 x80000002. Windows RegCreateKeyEx(…) returned error code 5.
修复方法是以管理员身份运行 JMeter,它将为您创建注册表项,然后您可以以普通用户身份重新启动 JMeter,您将不再有警告。 -
您可能会遇到以下错误:
java.security.cert.CertificateException: Certificates does not conform to algorithm constraints
如果您在具有 SSL 证书(其本身或其信任链中的 SSL 证书之一)的网站上运行 HTTPS 请求,该证书具有使用 MD2 的签名算法(如md2WithRSAEncryption)或大小低于 1024 位的 SSL 证书。此错误与 Java 8+ 中增加的安全性有关。
要允许您执行 HTTPS 请求,您可以通过编辑 Java jdk.certpath.disabledAlgorithms属性来降低 Java 安装的安全性。根据您的情况,删除 MD2 值或大小约束。
此属性在此文件中:JAVA_HOME/jre/lib/security/java.security
有关详细信息,请参阅 错误 56357。 - 在 Mac OSX 下,聚合图会由于数字的镜像效应而显示错误的值。这是由于一个已知的 Java 错误,请参阅错误JDK-8065373 修复是使用 JDK8_u45 或更高版本。
- 查看结果树可能无法在 HTML 渲染器下显示某些 HTML 代码,请参阅 错误 54586。这是由于一个已知的 Java 错误导致无法解析行/列属性中的“ px ”单位。请参阅错误JDK-8031109 修复是使用 JDK9 b65 或更高版本。
- 带有键盘的 JTable 选择(SHIFT + up/down)在 Mac OSX 上的 Java 7 中完全不可用。这是由于一个已知的 Java 错误JDK-8025126 修复是使用 JDK 8 b132 或更高版本。
-
自 Java 11 起,JavaScript 实现Nashorn 已被弃用。如果您使用基于 Nashorn 的 JavaScript,Java 将发出以下弃用警告。
Warning: Nashorn engine is planned to be removed from a future JDK release
要使这些警告静音,请将-Dnashorn.args=--no-deprecation-warning添加到您的 Java 参数中。这可以通过设置环境变量JVM_ARGS来实现export JVM_ARGS="-Dnashorn.args=--no-deprecation-warning"
-
在 Java 15 中,JavaScript 实现Nashorn 已被删除。要重新添加兼容 JSR-223 的 JavaScript 引擎,您有两种选择:
- 使用 Mozilla Rhino
- 将rhino-engine-1.7.13.jar复制到$JMETER_HOME/lib/ext中。
- 使用 OpenJDK Nashorn
-
OpenJDK Nashorn 实现作为一个模块提供。要使用它,您必须下载它并将其添加到模块路径中。下面概述了下载 15.0 版及其依赖项并设置模块路径的 hacky 方法:
mkdir lib/modules pushd lib/modules wget https://repo1.maven.org/maven2/org/openjdk/nashorn/nashorn-core/15.0/nashorn-core-15.0.jar wget https://repo1.maven.org/maven2/org/ow2/asm/asm/9.0/asm-9.0.jar wget https://repo1.maven.org/maven2/org/ow2/asm/asm-commons/9.0/asm-commons-9.0.jar wget https://repo1.maven.org/maven2/org/ow2/asm/asm-util/9.0/asm-util-9.0.jar wget https://repo1.maven.org/maven2/org/ow2/asm/asm-tree/9.0/asm-tree-9.0.jar wget https://repo1.maven.org/maven2/org/ow2/asm/asm-analysis/9.0/asm-analysis-9.0.jar popd export JVM_ARGS="--modulepath $PWD/lib/modules" ./bin/jmeter