版本5.1

摘要

新的和值得注意的

核心改进

JDBC测试已得到改进,能够设置init SQL语句并添加与不支持QueryTimeout的JDBC驱动程序的兼容性

  • 已经实现了各种错误修复,例如在使用HTTPS通过HTTP(S)测试脚本记录器记录请求时收集正确的标头
  • 在5.0版中,JMeter已更改为使用自定义命名策略重命名Sub结果(错误62550)。这种变化对于功能测试来说可能很烦人,新的属性 subresults.disable_renaming = true已被引入,以便在以前的行为需要时还原。另一种方法是检查测试计划中的功能测试模式,参见Bug 63055

UX改进

模板可以提供在测试计划生成时填写的参数, 记录模板使用此功能

引入了一个新的工具菜单来收集那些用于JMeter的一般用法的条目,例如:

  • 功能助手对话框
  • 导出报告的交易
  • 生成原理图视图,提供测试计划的HTML概述
  • 从cURL导入,允许您通过导入cURL命令创建或更新测试计划
  • 编译JSR223测试元素
  • 创建堆转储
  • 创建一个线程转储

测试计划

能够从cURL命令创建测试计划。

脚本/调试增强功能

  • 现在,“ 工具”菜单中提供了编译所有JSR223元素的菜单项

实时报告和Web报告

  • 现在,在使用-e或-g选项时,会生成包含负载测试统计信息摘要的JSON文件。
  • 已经修改了计算时间图算法的百分位数以针对每个时隙重新启动
  • 通过-f命令行选项报告文件夹不存在或不为空时,更加用户友好的行为

不兼容的变化

  • 在HTML报告的响应时间百分比(成功响应)图中,在此版本之前,每个时隙的百分位计算使用先前时隙的百分位数据作为基础。从这个版本开始,每个时隙都是独立的。见Bug 62883
  • ClientJMeterEngine#rsetProperties签名已更改为使用HashMap <String,String>而不是Properties,请参阅错误63034
  • 引入了一个新的菜单项工具,帮助菜单中的一些菜单项现在位于此新菜单项下。见Bug 63094
  • slf4j-ext已从库(lib文件夹)和JMeter pom中删除。它没有被默认使用,并且由于CVE-2018-8088并且没有包含此问题修复的稳定版本,我们决定将其删除。如果仍然需要,可以将其添加到lib文件夹中。

改进

HTTP采样器和测试脚本记录器

  • 错误62840 - HTTP请求:添加选项httpclient4.gzip_relax_mode以避免在解压缩似乎无效的流时出错
  • 错误63025 - 增强HTTP请求的搜索和替换功能,以包括端口和协议字段。Mohamed Ibrahim的初始代码修复(gmail.com的rollno748)

其他采样器

  • 错误62934 - 为不支持QueryTimeout的JDBC驱动程序添加兼容性
  • 错误62935 - 将自定义邮件。*属性传递给Mail Reader Sampler。由Artem Fedorov(blazemeter.com上的artem.fedorov)实施,由BlazeMeter提供。
  • 错误63055 - 当测试在功能模式或属性subresults.disable_renaming = true中运行时,请勿重命名SampleResult Label 。由Artem Fedorov(blazemeter.com上的artem.fedorov)实施,由BlazeMeter提供。

控制器

听众

定时器,断言,配置,预处理器和后处理器

  • 错误62766 - 密钥库配置:我们应该默认加载所有别名。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62832 - JDBC连接配置:能够设置init SQL语句。供稿人:Ubik Load Pack(ubikloadpack.com支持)

功能

  • 错误63037 - 当使用CSVRead搜索文件的脚本基本路径时。

国际化

报告/仪表板

  • 错误62883 - 报告/仪表板:更改响应时间百分位数(成功响应)图表的百分位数计算方式
  • 错误63060 - 报告生成器:生成器应该只检查它生成的文件夹/文件,只删除那些文件夹/文件
  • 错误63059 - 创建一个新的JsonExporter,以JSON格式导出为HTML Dashboard Statistics表计算的数据内容。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误63081 - 命令行选项-f在仅通过命令行选项-g使用生成时不会删除报告文件夹。供稿人:Ubik Load Pack(ubikloadpack.com支持)

一般

  • 错误62959 - 能够从cURL命令创建测试计划。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 拉请求#394 - 在FieldStringEditor中允许空值。基于Mingun的补丁(alex.ru的alexander_sergey)
  • 错误62826 - 更改LAF时,如果用户单击是以弹出,则重新启动JMeter
  • 错误62257 - 拉取请求#401 - 展开/折叠短按键-(减号)在小键盘上不起作用。由Ori Marko供稿(orimarko在gmail.com)
  • 错误62752 - 添加到文档:ctx.getThreadNum()从零开始,而$ {__ threadNum}是从一开始的
  • 拉请求#411 - 在org.apache.jmeter.save.SaveService中使用SHA-1而不是SHA1。供稿人:Paco(paco.xu at daocloud.io)
  • 错误62914 - 在线程组UI中添加有关测试持续时间的提示
  • 错误62925 - 将对 ThreadDump的支持添加到JMeter非GUI
  • 错误62870 - 模板:添加提供参数的功能。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62829 - 允许为HTTP请求采样器,高级选项卡和命令行选项指定代理服务器方案。Hitesh Patel供稿(hitesh.h.patel at gmail.com)
  • 错误59633 - 菜单将测试计划保存为,另存为测试片段并将选择另存为...应在文件对话框中使用新文件名
  • 错误61486 - 使jmeter-server和非GUI模式无头运行
  • 错误63093 - 添加编译JSR223测试元素菜单项。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误63094 - 介绍一个新的工具菜单
  • 错误63101 - 建议一个菜单项以生成测试计划的可读概述
  • 错误63144 - 查看监听器树需要很长时间才能打开具有大文本的响应。供稿人:Ubik Load Pack(ubikloadpack.com支持)

非功能性变化

  • 拉请求#408 - 当找不到RenderInBrowser组件的JavaFX时,记录信息性消息而不是堆栈跟踪。
  • 拉请求#412 - 更新中文翻译。供稿人:刘士(outlook.com上的liushilive)。
  • 请求#406 - 添加一个关于如何将安全管理器与JMeter一起使用的简短段落。
  • 错误62893 - 使用commons-text(版本1.6)中的StringEscapeUtils而不是commons-lang3中不推荐使用的StringEscapeUtils。
  • 错误62972 - 请求#435 - 将调用替换为已弃用的方法Class#newInstance。
  • 错误63034 - ClientJMeterEngine:使rsetProperties使用HashMap <String,String>而不是Properties
  • 更新为httpclient / httpmime 4.5.7(从4.5.6开始)
  • 更新为httpcore 4.4.11(自4.4.10起)
  • 更新为httpcore-nio 4.4.11(自4.4.10起)
  • 更新为tika-core和tika-parsers 1.20(从1.18开始)
  • 更新为commons-dbcp2-2.5.0(来自commons-dbcp2-2.4.0)
  • 更新为commons-lang3-3.8.1(来自commons-lang3-3.8)
  • 更新为groovy-all-2.4.16(来自groovy-all-2.4.15)
  • 已更新至httpasyncclient-4.1.4.jar(来自4.1.3)
  • 更新到jsoup-1.11.3(从1.11.2开始)
  • 已更新至cglib-nodep-3.2.9(来自cglib-nodep-3.2.7)
  • 更新为ph-commons-9.2.1(来自ph-commons-9.1.2)
  • 更新为log4j-2.11.1(来自log4j-2.11.0)
  • 更新到xmlgraphics-commons 2.3(从2.2开始)
  • 错误63033 - 更新为Saxon-HE 9.9.1-1(从9.8.0-12)。谢谢Saxonica
  • 更新到xstream 1.4.11(从1.4.10开始)
  • 更新为jodd 5.0.6(来自4.1.4)
  • 更新为asm-7.0(从6.1开始)
  • 更新到ActiveMQ 5.15.8(从5.5.16开始)
  • 更新为rsyntaxtextarea-3.0.2(来自2.6.1)
  • 更新到apache-rat-0.13(从0.12开始)
  • 更新为jacocoant-0.8.3(从0.8.2开始)
  • 已更新至hsqldb-2.4.1(从2.4.0开始)
  • 更新至mina-core-2.0.19(从2.0.16开始)
  • 错误62818 - 更新到xercesImpl到2.12.0(从2.11.0)。由Stefan Seide报道(stefan at trilobyte-se.de)
  • 错误62744 - 将jquery升级到版本3.3.1,将jquery-ui升级到1.12.1,将bootstrap升级到3.3.7
  • 错误62821 - 请求#405 - 使用SHA-512校验和而不是MD5来验证jar下载
  • 错误63053 - 从用户文档中删除从未实现内部的引用。由U. Poblotzki报告(u.poblotzki at thalia.de)
  • 错误63082 - 请求#437 - 将utf-8用于源中的属性文件
  • 错误63177 - 在文档中将非GUI模式重命名为CLI模式

Bug修复

HTTP采样器和测试脚本记录器

  • 错误62785 - 请求#400 - 不完整的搜索路径应用于HTTP采样器上传功能中使用的文件名。由Artem Fedorov(blazemeter.com上的artem.fedorov)实施,由BlazeMeter提供。
  • 错误62842 - HTTP(S)测试脚本记录器:不支持Brotli压缩导致“ 内容编码错误 ”
  • 错误60424 - Hessian Burlap应用程序:JMeter 自动在0x0A之前插入0x0D(http二进制发布数据)
  • 错误62940 - 当我们基于IP地址生成证书时,使用不同的cn和SAN扩展类型。
  • 错误62916 - 如果在运行分布式测试后开始记录,HTTP测试脚本记录器将失败,并显示UnsupportedOperationException
  • 错误62987 - HTTP(S)测试脚本记录器下的TestBean元素不起作用。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误63015 - 在第一次失败请求后通过代理HTTP(S)测试脚本记录器运行请求时出现异常NoHttpResponseException。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62852 - HTTP请求标头在使用代理时丢失信息。感谢Oleg Kalnichevski(来自apache.org的olegk)
  • 错误63048 - JMeter不检索“快捷图标”或“图标”类型的链接资源。供稿人:Ubik Load Pack(ubikloadpack.com支持)

其他采样器

  • 错误62775 - 如果很多jar都在user.classpath引用的文件夹中,由于JUnit,启动可能会非常慢
  • 错误63031 - JDBC驱动程序类不正确:org.firebirdsql.jdbc.FBDrivery。供稿人:Sonali(gmail.com的arora.sonali99)

控制器

  • 错误62806 - 通过运行进行的ModuleController克隆在GUI或非GUI模式下表现不同。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62847 - 如果Controller无法使用LoopController / WhileController / ForEachController公开的索引变量
  • 错误63064 - 忽略IfController中使用的表达式的结尾和开头的空格

听众

  • 错误62770 - Aggregate Graph抛出ArrayIndexOutOfBoundsException
  • 错误63069 - 如果用户在录制或测试运行时退出,则ResultCollector不会写入XML文件的结尾。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误63138 - InfluxDB BackendListenerClient:如果出现错误,日志处于调试状态,应该是错误的

定时器,断言,配置,预处理器和后处理器

  • 错误62774 - XPath2Extractor:范围变量已损坏。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62860 - JSON提取器:当找不到变量时,避免NPE和噪声错误消息“ 处理JSON内容时出错 ”

功能

国际化

报告/仪表板

  • 错误62777 - Web报告/仪表板:在响应时隐藏全部时间百分比(成功响应)失败。
  • 错误62780 - Web报告/仪表板:在响应时间显示全部Vs请求失败。
  • 错误62781 - Web报告/仪表板:显示所有响应时间概述失败。
  • 错误62782 - Web报告/仪表板:删除重复/未使用的依赖项
  • 错误62894 - 报告/仪表板:吞吐量在错误的列中,由于单位为毫秒,因此会引起混淆
  • 错误63016 - 如果源csv包含带引号的标签,则为空HTML报告。供稿人:Ubik Load Pack(ubikloadpack.com支持)

文档

  • 将测试操作(旧名称)更改为组件参考文档中的流控制操作。由Ori Marko供稿(orimarko在gmail.com)

一般

  • 错误62745 - 修复未定义的禁用图标。供稿人:Till Neunast(https://github.com/tilln)
  • 错误62743 - 必须在分布式测试上启用客户端身份验证
  • 错误62767 - 在某些条件下搜索时的NPE。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62790 - 在不选择第一个匹配项的情况下调用replace时出现ArrayIndexOutOfBoundsException
  • 错误62795 - JMeter master有时会结束分布式测试,即使有些从站还没有完成
  • 错误62336 - 请求#396 - 某些快捷方式在Windows上无法正常工作。供稿人:Michael Pavlov(gmail.com的michael.paulau)
  • 错误62889 - 使用JSON Path Tester显示时格式化JSON数组。
  • 错误62900 - ObjectProperty #getStringValue()可以抛出NullPointerException
  • 错误63099 - 仅在变量替换结构之外的函数帮助器对话框中转义逗号。
  • 错误63105 - 导出报告事务:修复2个错误
  • 错误63106 - 应用命名策略不刷新UI
  • 错误63180 - 应用命名策略允许多选,但仅考虑第一个节点
  • 错误63090 - 删除因CVE-2018-8088而导致的slf4j-ext

谢谢

我们感谢上面的bug和改进部分中提到的所有贡献者:

  • Oleg Kalnichevski(来自apache.org的olegk)
  • Till Neunast(https://github.com/tilln)
  • Mingun(mail.ru的alexander_sergey)
  • Ubik Load Pack
  • Artem Fedorov(blazemeter.com上的artem.fedorov)
  • Stefan Seide(stefan at trilobyte-se.de)
  • 刘士(来自outlook.com的liushilive)
  • 迈克尔巴甫洛夫(gmail.com的michael.paulau)
  • Ori Marko(gmail.com的orimarko)
  • Paco(paco.xu at daocloud.io)
  • Hitesh Patel(hitesh.h.patel at gmail.com)
  • Sonali(gmail.com的arora.sonali99)
  • Mohamed Ibrahim(gmail.com的rollno748)
  • U. Poblotzki(在thalia.de的u.poblotzki)
  • Saxonica

我们也感谢帮助我们改进JMeter的bug记者。

如果我们遗漏了其他人,请道歉。

已知问题和解决方法

  • Once Only控制器在线程组或循环控制器下正常运行,但其行为不一致(或明确指定)。
  • 绿色框左侧显示的数字是活动线程数/线程总数,线程总数仅适用于本地运行的测试,否则将显示0(参见错误55510)。
  • 请注意,在某些Windows系统下,您可能会遇到以下警告:
    java.util.prefs.WindowsPreferences
    警告:无法在root 0处打开/创建prefs根节点Software \ JavaSoft \ Prefs
    x80000002。Windows RegCreateKeyEx(...)返回错误代码5。

    修复是以管理员身份运行JMeter,它将为您创建注册表项,然后您可以作为普通用户重新启动JMeter,您将不再有警告。

  • 您可能会遇到以下错误:
    java.security.cert.CertificateException:证书不符合算法约束

    如果您在具有SSL证书(本身或其信任链中的SSL证书之一)的网站上使用MD2(如md2WithRSAEncryption)或大小低于1024位的SSL证书运行HTTPS请求。此错误与Java 8+中增强的安全性有关。 
    要允许您执行HTTPS请求,可以通过编辑Java jdk.certpath.disabledAlgorithms属性来降级Java安装的安全性。根据您的情况,删除MD2值或大小约束。 
    此属性在此文件中:

    JAVA_HOME / JRE / lib / security中/ java.security

    有关详细信息,请参阅 错误56357

  • 在Mac OSX下,由于镜像对数字的影响,聚合图表将显示错误的值。这是由于已知的Java bug,请参阅Bug JDK-8065373 。修复方法是使用JDK8_u45或更高版本。
  • 查看结果树可能无法在HTML呈现器下显示某些HTML代码,请参阅错误54586。这是由于已知的Java错误无法解析row / col属性中的“ px ”单位。请参阅Bug JDK-8031109 修复方法是使用JDK9 b65或更高版本。
  • 使用键盘进行JTable选择(SHIFT  +  向上/向下)在Mac OSX上完全无法使用Java 7。这是由于已知的Java错误JDK-8025126 修复是使用JDK 8 b132或更高版本。

5.0版

摘要

新的和值得注意的

核心改进

在许多领域,休息支持得到了改善

  • 多部分/表单数据请求现在适用于PUT,DELETE ......
  • 现在也可以发送带附加文件的JSON Body
  • 在“参数”选项卡中输入的参数现在在正文中使用,而不是被忽略

在分布式测试中,JMeter现在自动为引线主机和端口添加线程名称前缀,这使得HTML报告中的线程计数正确无需任何其他配置,因为之前需要

XPath 2.0在一个名为XPath2提取器的新元素中受支持,提供更简单的XML命名空间处理,最新的XPath语法和更好的性能

升级到HTTP Components 4.6最后的API已经完成,JMeter不再依赖于此库的弃用API

现在可以以更简单的方式控制循环中断和循环切换到下一次迭代。这在流控制操作和结果状态操作处理程序元素中 可用

Controller现在导出一个包含其当前索引的变量,名为__jm __ <元素名称> __ idx。因此,例如,如果您的While Controller名为WC,那么您可以通过$ {__ jm__WC__idx}访问循环索引

脚本/调试增强功能

搜索功能已得到改进,允许您在搜索结果中迭代树,并通过下一个 / 上一个 / 替换 / 替换/查找按钮 进行必要的替换

在“查看结果树”中,请求和响应标头/正文明确分开,以便您更好地检查请求和响应。您还可以在所有选项卡中搜索特定值

录制功能已得到改进,以便在浏览器中导航时提供始终位于顶部的弹出窗口,允许您在应用程序中导航时命名事务。

您现在可以从菜单文件  →  重新启动重新启动JMeter

实时报告和Web报告

报告功能已得到增强

每秒新的图表总事务数已添加到HTML Web报告中

现在可以通过sample_variables随时间绘制可用作JMeter变量的自定义指标。这些自定义指标图表将显示在“ 自定义图表”部分的“HTML报告”中

每秒点击次数图表现在考虑了嵌入式资源

在实时报告中,发送和接收的字节现在发送到后端(InfluxDB或Graphite)

功能

引入了一个新函数__threadGroupName来获取ThreadGroup名称。

不兼容的变化

  • 从JMeter 5.0开始,当使用默认的HC4实现时,JMeter将在每个线程组迭代时重置HTTP状态(SSL状态+连接)。如果您不想要此行为,请设置httpclient.reset_state_on_thread_group_iteration = false
  • 从JMeter 5.0开始,就上述注释而言,不推荐使用https.use.cached.ssl.context,不再使用它。
  • 从JMeter 5.0开始,当使用CSV输出时,子结果现在也将输出到CSV文件。要恢复到先前的行为设置jmeter.save.saveservice.subresults = false,请参阅错误62470错误60917错误62550
  • 从JMeter 5.0开始,CSS / JQuery Extractor已重命名为CSS Selector Extractor
  • 从JMeter 5.0开始,Test Action已重命名为Flow Control Action
  • 从JMeter 5.0开始,JMeter将subResults重命名为parentName-N,其中N是一个数字,以确保每秒Hits图包含资源下载,请参阅错误62550错误62470错误60917

改进

HTTP采样器和测试脚本记录器

  • 错误62260 - 改善休息支持。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误58757 - HTTP请求:更新了HttpComponents的弃用方法以使用httpclient-4.5.X的最后一个API。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62212 - 记录器:通过在所有窗口上方提供弹出窗口来改进UX,以便在使用浏览器时更改事务名称和暂停。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62248 - HTTP请求:在参数选项卡中输入的参数应该在正文中使用而不是被忽略。部分基于由Blazemeter贡献的Artem Fedorov补丁。
  • 错误60015 - Multipart / form-data仅适用于使用HTTPClient4的POST,而它应该用于PUT,DELETE,...由Ubik Load Pack提供(ubikloadpack.com支持)
  • 错误62317 - HTTP(S)测试脚本记录器:允许将ResultSaver添加到创建的采样器

其他采样器

  • Pull请求#376 - JUnitSampler将除测试用例中的断言失败之外的异常记录为警告。供稿人:Davide Angelocola(fisglobal.com上的davide.angelocola)
  • 错误62244 - 将测试操作重命名为流控制操作
  • 错误62302 - 将JSR223采样器移到菜单上。由Ori Marko供稿(orimarko在gmail.com)
  • 错误62595 - SMTPSampler不允许配置在握手时使用的SSL / TLS协议。供稿人:Felipe Cuozzo(fmail.com的felipe.cuozzo)

控制器

  • 错误62237 - While Controller:导出包含当前迭代索引的变量。供稿人:Ubik Load Pack(ubikloadpack.com支持)

听众

  • 错误62195 - 保存对文件的响应:改进组件和UI。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62209 - InfluxBackendListenerClient:如果错误代码和响应代码为空或正常,则必须发送第一个断言失败消息
  • 错误62269 - 错误62269 - 查看结果树:响应和请求选项卡应包含页眉和正文选项卡。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62270 - 查看结果树:允许在请求标头,响应标头和请求正文中进行搜索。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62276 - InfluxDBBackendListenerClient / GraphiteBackendListenerClient:将已发送和已接收的字节添加到度量标准。供稿人:Ubik Load Pack(ubikloadpack.com支持)

定时器,断言,配置,预处理器和后处理器

  • 错误62320 - 计数器:引用名称属性不清楚
  • 错误60991 - XPath Extractor:实现XPath 2.0。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62593 - 将CSS / JQuery Extractor重命名为CSS Selector Extractor。由Ori Marko供稿(orimarko在gmail.com)

功能

国际化

报告/仪表板

  • 错误62243 - 仪表板:选项“ --forceDeleteResultFile ”/“ - f ”选项删除“ -o ”选项引用的文件夹
  • 错误62367 - HTML报告生成器:每秒添加图表总事务数。主要由Martha Laks(laks.martha at gmail.com)提供
  • 错误62166 - 报告/仪表板:提供在JMeter仪表板中注册自定义图形和指标的功能。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62542 - 报告/仪表板:当图表为空时显示有关过滤器的更多信息。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62426 - 优化报告生成的性能。基于Allen(444104595,qq.com)的反馈
  • 错误62550 - 修改SubResult命名策略
  • 错误60917 - 带有嵌入式资源的负载测试下载:每秒点击次数不考虑下载的资源

一般

  • 错误62684 - 分布式测试:自动添加到线程名称前缀以标识引擎。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62155 - 搜索功能:使搜索文本字段获得焦点
  • 错误62156 - 搜索功能:区分匹配搜索的节点和包含与搜索匹配的子节点的节点
  • 错误62234 - 搜索/替换功能:增强UX并添加替换/下一个/上一个/替换和查找功能。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62238 - 添加切换到Current Loop的下一次迭代的功能。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62239 - 添加打破当前循环的功能
  • 错误61635 - 添加菜单以重新启动JMeter
  • 错误62470 - CSV输出:当jmeter.save.saveservice.subresults = true时,启用子结果的记录。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62473 - 设置“ saveservice_properties ”具有反直觉行为
  • 错误62354 - 正确计算和使用每个用户第二个单位(由gffagot05在gmail.com报告)
  • 错误62700 - 介绍jsr223.init.file以允许在JMeter启动时调用JSR-223脚本
  • 错误62128 -尝试猜测JMETER_HOME正确,当jmeter.bat从别的目录下的批处理文件调用。由logox01提供(logox01 at gmx.at)
  • Pull请求#386 - 为RMI密钥库创建脚本添加参数支持。供稿人:Logan Mauzaize(t524467 at airfrance.fr)
  • 错误62065 - 使用Maven工件代替嵌入式模块JAF模块
  • 错误61714 - 更新实时结果文档
  • 拉请求#382 - 在文档中纠正错误。Perze Ababa报道(perze.ababa at gmail.com>)
  • 拉请求#392 - 纠正文档中的拼写错误。Aaron Levin报道
  • 拉请求#379 - 改进中文翻译。由XmeterNet提供

非功能性变化

  • 拉请求#358, 拉请求#365, 拉请求#366, 拉请求#375 - 更新到最新的checkstyle(v8.8)。将Checkstyle扩展为src中的文件并进行测试 ; 修复新检查的文件。根据Graham Russell(graham at ham1.co.uk)的贡献
  • 错误62095 - 边界提取器中右边界参数的正确描述。由Ori Marko供稿(orimarko在gmail.com)
  • 错误62113 - 更新到最新的Bouncycastle(v1.60)。基于Olaf Flebbe的贡献(来自apache.org的oflebbe)
  • 错误62171 - 删除.md5校验和并仅为源和二进制存档保留.sha512校验和
  • 更新为groovy-all-2.4.15(来自groovy-all-2.4.13)
  • 更新为asm-6.1(从6.0开始)
  • 更新为tika-core和tika-parsers 1.18(从1.17开始)
  • 错误62482 - 将文档同步到ForEachController的实现。基于Ori Marko(orimarko at gmail.com)的贡献
  • 错误62529 - 更新为httpclient-4.5.6(来自httpclient 4.5.5)并更新为freemarker-2.3.28(来自freemarker-2.3.23)。基于Ori Marko的补丁(在gmail.com上的orimarko)
  • 已更新至httpmime-4.5.6(来自httpmime-4.5.5)
  • 更新为咖啡因-2.6.2(来自咖啡因-2.6.1)
  • 已更新至cglib-nodep-3.2.7(来自cglib-nodep-3.2.6)
  • 更新为commons-dbcp2-2.4.0(来自commons-dbcp2-2.2.0)
  • 更新为commons-pool2-2.6.0(来自commons-pool2-2.5.0)
  • 更新为httpcore-4.4.10(来自httpcore-4.4.9)
  • 更新为httpcore-nio-4.4.10(来自httpcore-nio-4.4.9)
  • 更新到log4j-2.11.0(来自log4j-2.10.0)
  • 更新为ph-css-6.1.1(来自ph-css-6.0.0)
  • 更新为ph-commons-9.1.2(来自ph-commons-9.0.0)
  • 更新至rhino-1.7.10(来自+ rhino-1.7.7.2)
  • 更新为commons-lang3-3.8(来自commons-lang3-3.7)

Bug修复

HTTP采样器和测试脚本记录器

  • 错误62114 - HTTP(S)测试脚本记录器:客户端证书身份验证使用创建的第一个SSLManager。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误61058 - HTTP请求:添加选项httpclient4.deflate_relax_mode以避免在缩小看似无效的流时出现“ZLIB输入流的意外结束”。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误43612 - HTTP PUT不支持请求参数。由Artem Fedorov(blazemeter.com上的artem.fedorov)实施,由BlazeMeter Ltd.提供。
  • 错误60190 - 无条件地为POST添加Content-Type 。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62462 - 提取请求#387 - 再次授权SPNEGO中的凭据。
  • 错误58807 - 仅在线程组迭代时重置SSL状态(https.use.cached.ssl.context = false已损坏)
  • 错误62716 - 记录时,JMeter在使用承载令牌时从生成的标题管理器中删除授​​权

其他采样器

  • 错误62235 - Java 9 - org.apache.jmeter.util.HostNameSetter的非法反射访问
  • 错误62464 - 即使初始化失败,也要在JMS发布者采样器上设置开始和结束时间。
  • 错误62616 - FTPSampler:上传文件大小不计入sentBytes

控制器

听众

  • 错误62097 - 仅在新数据到达时更新聚合报告中的JTable。这样,行的选择将保持更长时间。
  • 错误62203 - Influxdb BackendListener客户端:将用户标记存储到注释和内部事务。供稿人:Sergey Batalin(mail.ru的sergey_batalin)
  • 错误62251 - 如果出现网络错误,TextGraphiteMetricsSender不会使丢失的连接失效
  • 错误60705 - 在移动列时修复聚合报表和朋友的标题。

定时器,断言,配置,预处理器和后处理器

  • 错误61664 - HTTP授权管理器:摘要仅适用于旧版RFC 2069,未实现RFC 2617。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62252 - HTTP标头合并逻辑与文档不对应
  • 错误62554 - BoundaryExtractor:要检查的字段未重置
  • 错误62553 - 即使属性“Per thread user(User)”设置为TRUE,Random元素也可能返回相同的值
  • 错误62637 - 在计算同步计时器的延迟时考虑调度程序

功能

国际化

  • 错误62310 - 精确吞吐量计时器标签的法语翻译

报告/仪表板

  • 错误62333 - 报告仪表板 - 当一个系列不包含任何值时,图形颜色逻辑错误。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 错误62283 - 报告仪表板 - 当粒度≤1天时,日期未正确显示在图表上
  • 错误62520 - 我们将鼠标悬停在'Latency Vs Request'图表中的点时的工具提示文本应为'Median Latency'

文档

  • 错误62211 - 修复HTTP请求服务器文档。由Ori Marko供稿(orimarko在gmail.com)
  • 拉请求#388 - 修正错字。供稿人:Giancarlo Romeo(gmail.com的giancarloromeo)

一般

  • 错误62107 - 当JM_LAUNCH包含空格时,JMeter无法在Windows下启动
  • 错误62110 - 一个损坏的JUnit类(由于缺少依赖性)会破坏JMeter菜单。供稿人:Ubik Load Pack(ubikloadpack.com支持)
  • 拉请求#377 - 文档的小修复。供稿人:Peter Doornbosch(luminis.eu的peter.doornbosch)
  • 错误62124 - 录制模板:添加更多排除项并默认使用“事务名称”
  • 错误62127 - 将文件名存储为String而不是FileEditor中的File。例如,在CSV数据集配置中使用时,这将阻止将文件名从Unix样式路径分隔符转换为Windows样式。
  • 错误56150 - 滚动菜单项时保持索引正确。
  • 错误62240 - 如果不能正确初始化,则SampleMonitor实现是TestBean
  • 错误62295 - 在复制多个元素的选择时更正元素的顺序。
  • 错误62397 - 使用JSON Path Tester时,不要在逗号处断行
  • 错误62281 - 防止MapProperty中的NPE。由belugabehr修补(dam6923 at gmail.com)
  • 错误62457 - 在用户手册中,UUID函数的示例是错误的。供稿人:helppass(hotmail.com上的onegaicimasu)
  • 错误 62478 - 在GUI函数帮助器中构造函数字符串时,在参数中转义逗号。报告由blue414(blue414在163.com)
  • 错误62463 - 当为分布式运行设置client.rmi.localport时,修复端口的使用。
  • 错误62545 - 在RenderAsJSON中缩进JSON时,不要使用冒号作为“tab”字符串的一部分。
  • 部分错误62637 -避免整数溢出具有非常大的价值在交易时TimerService#adjustDelay
  • 错误62683 - 当用户打开完全无效的测试计划时,错误对话框没有文本。

谢谢

我们感谢上面的bug和改进部分中提到的所有贡献者:

  • 格雷厄姆罗素(graham at ham1.co.uk)
  • Ori Marko(gmail.com的orimarko)
  • Davide Angelocola(fisglobal.com上的davide.angelocola)
  • Ubik Load Pack
  • Olaf Flebbe(来自apache.org的)
  • Peter Doornbosch(luminis.eu的peter.doornbosch)
  • logox01(logox01 at gmx.at)
  • Sergey Batalin(mail.ru的sergey_batalin)
  • XMeter
  • Imane Ankhila(在ahlane.net的iankhila)
  • jffagot05(jffagot05 at gmail.com)
  • Perze Ababa(perze.ababa at gmail.com)
  • Martha Laks(来自gmail.com的laks.martha)
  • Logan Mauzaize(t524467 at airfrance.fr)
  • belugabehr(gmail.com的dam6923)
  • Giancarlo Romeo(gmail.com的giancarloromeo)
  • helppass(hotmail.com上的onegaicimasu)
  • blue414(blue414 at 163.com)
  • 亚伦莱文
  • 艾伦(qq.com的444104595)
  • Felipe Cuozzo(fmail.com的felipe.cuozzo)
  • bangnab(gros上的ambrosetti.nicola)

我们也感谢帮助我们改进JMeter的bug记者。

如果我们遗漏了其他人,请道歉。

已知问题和解决方法

  • Once Only控制器在线程组或循环控制器下正常运行,但其行为不一致(或明确指定)。
  • 绿色框左侧显示的数字是活动线程数/线程总数,线程总数仅适用于本地运行的测试,否则将显示0(参见错误55510)。
  • 请注意,在某些Windows系统下,您可能会遇到以下警告:
    java.util.prefs.WindowsPreferences
    警告:无法在root 0处打开/创建prefs根节点Software \ JavaSoft \ Prefs
    x80000002。Windows RegCreateKeyEx(...)返回错误代码5。

    修复是以管理员身份运行JMeter,它将为您创建注册表项,然后您可以作为普通用户重新启动JMeter,您将不再有警告。

  • 您可能会遇到以下错误:
    java.security.cert.CertificateException:证书不符合算法约束

    如果您在具有SSL证书(本身或其信任链中的SSL证书之一)的网站上使用MD2(如md2WithRSAEncryption)或大小低于1024位的SSL证书运行HTTPS请求。此错误与Java 8+中增强的安全性有关。 
    要允许您执行HTTPS请求,可以通过编辑Java jdk.certpath.disabledAlgorithms属性来降级Java安装的安全性。根据您的情况,删除MD2值或大小约束。 
    此属性在此文件中:

    JAVA_HOME / JRE / lib / security中/ java.security

    有关详细信息,请参阅 错误56357

  • 在Mac OSX下,由于镜像对数字的影响,聚合图表将显示错误的值。这是由于已知的Java bug,请参阅Bug JDK-8065373 。修复方法是使用JDK8_u45或更高版本。
  • 查看结果树可能无法在HTML呈现器下显示某些HTML代码,请参阅错误54586。这是由于已知的Java错误无法解析row / col属性中的“ px ”单位。请参阅Bug JDK-8031109 修复方法是使用JDK9 b65或更高版本。
  • 使用键盘进行JTable选择(SHIFT  +  向上/向下)在Mac OSX上完全无法使用Java 7。这是由于已知的Java错误JDK-8025126 修复是使用JDK 8 b132或更高版本。

本文摘自官网,此处仅做个人记载!!!!!

jmeter 5.1版本更新说明的更多相关文章

  1. jmeter 4.0版本更新说明(个人做个记录)总版本更新合集

    版本4.0 摘要 新的和值得注意的 不兼容的变化 Bug修复 改进 非功能性变化 已知问题和解决方法 谢谢 新的和值得注意的 核心改进 JMeter现在支持JAVA 9. 提供新的边界提取器元件,提供 ...

  2. jmeter 5.0版本更新说明(个人做个记录)

    变化   此页面仅详细说明了当前版本中所做的更改. 先前更改的历史记录中详细介绍了早期更改.   5.0版 摘要 新的和值得注意的 不兼容的变化 Bug修复 改进 非功能性变化 已知问题和解决方法 谢 ...

  3. Jmeter3.0发布,版本更新都更新了什么

    Jmeter已发布了3.0,一个大版本的开源测试工具,加入了一些新的特性及软件的改进. Jmeter已隔10年的大版本更新 这是在过去12年里jmeter第一个大版本的更新,jmeter 2.0版本发 ...

  4. Jmeter的优点是什么?除了轻量级,它和LoadRunner有什么本质区别

    1.jmeter的架构和loadrunner原理一样,都是通过中间代理,监控和收集并发客户端发出的指令,把他们生成脚本,再发送到应用服务器,再监控服务器反馈结果的一个过程: 2.分布式中间代理功能在j ...

  5. 性能测试监控:Jmeter +InfluxDB +collectd +Grafana

    虚拟机ip 192.168.180.128 Influxdb Influxdb是一个开源的分布式时序.时间和指标数据库,使用go语言编写,无需外部依赖. 它有三大特性: 时序性(Time Series ...

  6. jmeter+maven+jenkins自动化接口测试(上)

    代码已上传git(包括调试的jmx,jmeter相关文件等):https://gitlab.com/yinzhenzhi/jmeterandmaven 目的:现在很多人都在做自动化接口的平台,我也正在 ...

  7. Jmeter自带录制功能

    版本更新迭代较快的情况下,通过自动化进行冒烟测试以判断版本准入,在无接口文档的情况下,如果进行自动化?Jmeter有一个自带的录制功能,可以通过录制,获取各个接口设计情况,下面介绍如何进行使用 1.打 ...

  8. jmeter(二十四)dubbo接口测试

    最近工作中接到一个需求,需要对一个MQ消息队列进行性能测试,测试其消费能力,开发提供了一个dubbo服务来供我调用发送消息. 这篇博客,介绍下如何利用jmeter来测试dubbo接口,并进行性能测试. ...

  9. 基于 jmeter 和 shell 的接口性能自动化

    jmeter+shell 1. 总体需求 由于性能测试中涉及的查询接口多,版本迭代频繁,版本更新后自动跑一轮查询业务的性能,可以及时发现一些开发修复bug触发的非预期的bug,利用晚上时间快速重测性能 ...

随机推荐

  1. 深度解读Helm 3: 犹抱琵琶半遮面

    自去年年初开始放风Helm v3将要开始开发,到去年年底KubeConn 上海被一堆人追问到底啥时候发版本.今年五月份,Helm v3 终于发布了第一个alpha版本,让我们来一窥新版本的Helm 到 ...

  2. Spring MVC 解决 Could not write JSON: No serializer found for class java.lang.Object

    Spring MVC 解决 Could not write JSON: No serializer found for class java.lang.Object 资料参考:http://stack ...

  3. 极简触感反馈Button组件

    一个简单的React触感反馈的button组件 import React from 'react'; import './index.scss'; class Button extends React ...

  4. HTML--CSS样式表--基本概念(超链接的状态)

    样式表的基本概念 一.样式表的分类 1.内联样式表 和HTML联合显示,控制精确,但是可重用性差,冗余较多. 例:<p style="font-size:14px;"> ...

  5. SpringBoot 集成 Activiti 一路踩得坑

    由于项目需要,本人开始在项目Spring boot 中集成工作流引擎Activiti.由于第一次集成,一路上步步都是坑,怪我没有先去看官方文档.现将一路上遇到的问题一一记录. 一. 环境配置 1.项目 ...

  6. 机器学习-RBF高斯核函数处理

     机器学习-RBF高斯核函数处理 SVM高斯核函数-RBF优化 重要了解数学的部分: 协方差矩阵,高斯核函数公式. 个人建议具体的求法还是看下面的核心代码吧,更好理解,反正就我个人而言,烦躁的公式,还 ...

  7. SVN提示update更新成功,但是本地文件却没有更新

    问题描述:将仓库的最新版本代码check out到本地后,然后最某个文件做了修改,保存后想通过svn的update来重新得到最新的版本,发现失效. 原因:经过多方查找原因,主要看了以下两篇文档 htt ...

  8. ASP.NET MVC 实现页落网资源分享网站+充值管理+后台管理(16)之轻博客

    源码下载地址:http://www.yealuo.com/Sccnn/Detail?KeyValue=c891ffae-7441-4afb-9a75-c5fe000e3d1c 项目到上面一步其实已经算 ...

  9. tf.contrib.learn.preprocessing.VocabularyProcessor()

    tf.contrib.learn.preprocessing.VocabularyProcessor (max_document_length, min_frequency=0, vocabulary ...

  10. 【Bad Blood】翻译0

    (一)作者注 本书基于对超过150人以上的上百个采访,包括60多个Theranos的职工而著成.叙述中出现的人物大多数都是他们的真实姓名,也有些人希望我隐藏身份信息,他们有些害怕公司的惩罚,有些担心会 ...