jmeter/xdocs/changes.xml

317 lines
15 KiB
XML

<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!DOCTYPE document
[
<!ENTITY hellip "&#x02026;" >
<!ENTITY rarr "&#x02192;" >
<!ENTITY vellip "&#x022EE;" >
]>
<document>
<properties>
<author email="dev AT jmeter.apache.org">JMeter developers</author>
<title>Changes</title>
</properties>
<body>
<section name="Changes">
<style type="text/css"><!--
h2 { color: #960000; }
h3 { color: #960000; }
--></style>
<note>
<b>This page details the changes made in the current version only.</b>
<br></br>
Earlier changes are detailed in the <a href="changes_history.html">History of Previous Changes</a>.
</note>
<!-- =================== 5.1 =================== -->
<h1>Version 5.1</h1>
<p>
Summary
</p>
<ul>
<li><a href="#New and Noteworthy">New and Noteworthy</a></li>
<li><a href="#Incompatible changes">Incompatible changes</a></li>
<li><a href="#Bug fixes">Bug fixes</a></li>
<li><a href="#Improvements">Improvements</a></li>
<li><a href="#Non-functional changes">Non-functional changes</a></li>
<li><a href="#Known problems and workarounds">Known problems and workarounds</a></li>
<li><a href="#Thanks">Thanks</a></li>
</ul>
<ch_section>New and Noteworthy</ch_section>
<ch_title>Core improvements</ch_title>
<ch_title>Scripting / Debugging enhancements</ch_title>
<ch_title>Live Reporting and Web Report</ch_title>
<ch_title>Functions</ch_title>
<!-- =================== Incompatible changes =================== -->
<ch_section>Incompatible changes</ch_section>
<li>In <code>Response Time Percentiles Over Time (successful responses)</code> graph of the HTML report, before this version, percentile computation of each time slot used the percentile data
of previous time slot as a base. Starting with this version, each time slot is independant. See <bugzilla>62883</bugzilla></li>
<!-- =================== Improvements =================== -->
<ch_section>Improvements</ch_section>
<h3>HTTP Samplers and Test Script Recorder</h3>
<ul>
<li><bug>62840</bug>HTTP Request: Add option <code>httpclient4.gzip_relax_mode</code> to avoid error when unzipping what seems to be invalid streams</li>
</ul>
<h3>Other samplers</h3>
<ul>
<li><bug>62934</bug>Add compatibility for JDBC drivers that do not support QueryTimeout </li>
<li><bug>62935</bug>Pass custom <code>mail.*</code> properties to Mail Reader Sampler. Implemented by Artem Fedorov (artem.fedorov at blazemeter.com) and contributed by BlazeMeter.</li>
</ul>
<h3>Controllers</h3>
<ul>
</ul>
<h3>Listeners</h3>
<ul>
<li><bug>62822</bug><pr>407</pr>Render uninitialized min and max values in Summary Report as <code>#N/A</code></li>
</ul>
<h3>Timers, Assertions, Config, Pre- &amp; Post-Processors</h3>
<ul>
<li><bug>62766</bug>Keystore Config : We should load all aliases by default. Contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
<li><bug>62832</bug>JDBC Connection Configuration: Be able to set init SQL statements. Contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
</ul>
<h3>Functions</h3>
<ul>
</ul>
<h3>I18N</h3>
<ul>
</ul>
<h3>Report / Dashboard</h3>
<ul>
<li><bug>62883</bug>Report / Dashboard : Change the way percentiles are computed for Response Time Percentiles Over Time (successful responses) graph</li>
</ul>
<h3>General</h3>
<ul>
<li><bug>62959</bug>Ability to create a Test plan from a cURL command. Contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
<li><pr>394</pr>Allow <code>null</code> values in <code>FieldStringEditor</code>. Based on patch by Mingun (alexander_sergey at mail.ru)</li>
<li><bug>62826</bug>When changing LAF, make JMeter restart if user clicks yes to popup</li>
<li><bug>62744</bug>Upgrade jquery to version 3.3.1, jquery-ui to 1.12.1, bootstrap to 3.3.7</li>
<li><bug>62257</bug><pr>401</pr>Expand/Collapse short key <keysym>-</keysym> (minus sign) on numpad doesn't work. Contributed by Ori Marko (orimarko at gmail.com)</li>
<li><bug>62752</bug>Add to Documentation: <code>ctx.getThreadNum()</code> is zero-based while <code>${__threadNum}</code> is one-based</li>
<li><pr>411</pr>Use <code>SHA-1</code> instead of <code>SHA1</code> in <code>org.apache.jmeter.save.SaveService</code>. Contributed by Paco (paco.xu at daocloud.io)</li>
<li><bug>62914</bug>Add a hint in Thread Group UI about duration of test</li>
<li><bug>62925</bug>Add support for ThreadDump to the JMeter non-GUI</li>
<li><bug>62870</bug>Templates : Add ability to provide parameters. Contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
<li><bug>62829</bug>Allow specifying Proxy server scheme for HTTP request sampler, Advanced tab and command line option. Contributed by Hitesh Patel (hitesh.h.patel at gmail.com)</li>
</ul>
<ch_section>Non-functional changes</ch_section>
<ul>
<li>Updated to tika-core and tika-parsers 1.19.1 (from 1.18)</li>
<li>Updated to commons-dbcp2-2.5.0 (from commons-dbcp2-2.4.0)</li>
<li>Updated to commons-lang3-3.8.1 (from commons-lang3-3.8)</li>
<li>Updated to groovy-all-2.4.16 (from groovy-all-2.4.15)</li>
<li>Updated to httpasyncclient-4.1.4.jar (from 4.1.3)</li>
<li>Updated to jsoup-1.11.3 (from 1.11.2)</li>
<li>Updated to cglib-nodep-3.2.9 (from cglib-nodep-3.2.7)</li>
<li>Updated to ph-commons-9.2.0 (from ph-commons-9.1.2)</li>
<li>Updated to log4j-2.11.1 (from log4j-2.11.0)</li>
<li><bug>62818</bug>Updated to xercesImpl to 2.12.0 (from 2.11.0). Reported by Stefan Seide (stefan at trilobyte-se.de)</li>
<li><bug>62821</bug><pr>405</pr>Use SHA-512 checksums instead of MD5 to verify jar downloads</li>
<li><pr>408</pr>Log an informational message instead of an stack trace, when JavaFX is not found for the <code>RenderInBrowser</code> component.</li>
<li><pr>412</pr>Update Chinese translation. Contributed by 刘士 (liushilive at outlook.com).</li>
<li><pr>406</pr>Add a short paragraph on how to use a security manager with JMeter.</li>
<li><bug>62893</bug>Use StringEscapeUtils from commons-text (version 1.6) instead of the deprecated ones from commons-lang3.</li>
<li>Update to ActiveMQ 5.15.7 (from 5.5.16)</li>
<li><bug>62972</bug><pr>435</pr>Replace calls to deprecated method <code>Class#newInstance</code>.</li>
</ul>
<!-- =================== Bug fixes =================== -->
<ch_section>Bug fixes</ch_section>
<h3>HTTP Samplers and Test Script Recorder</h3>
<ul>
<li><bug>62785</bug><pr>400</pr>Incomplete search path applied to the filenames used in the upload functionality of the HTTP sampler. Implemented by Artem Fedorov (artem.fedorov at blazemeter.com) and contributed by BlazeMeter.</li>
<li><bug>62842</bug>HTTP(S) Test Script Recorder: Brotli compression is not supported leading to "<code>Content Encoding Error</code>"</li>
<li><bug>60424</bug>Hessian Burlap application: JMeter inserts <code>0x0D</code> before <code>0x0A</code> automatically (http binary post data)</li>
<li><bug>62940</bug>Use different <code>cn</code> and type of SAN extension when we are generating certificates based on IP addresses.</li>
<li><bug>62916</bug>HTTP Test Script Recorder fails with UnsupportedOperationException if recording is started after a distributed test has been run</li>
<li><bug>62987</bug>A TestBean element under HTTP(S) Test Script recorder does not work. Contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
<li><bug>62987</bug>Abnormal NoHttpResponseException when running request through proxy HTTP(S) Test Script Recorder after a first failing request. Contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
<li><bug>62852</bug>HTTP Request Header missing information when using a proxy</li>
</ul>
<h3>Other Samplers</h3>
<ul>
<li><bug>62775</bug>If many jars are in a folder referenced by <code>user.classpath</code>, startup can be extremely slow due to JUnit</li>
<li><bug>63031</bug>Incorrect JDBC driver class : <code>org.firebirdsql.jdbc.FBDrivery</code>. Contributed by Sonali (arora.sonali99 at gmail.com)</li>
</ul>
<h3>Controllers</h3>
<ul>
<li><bug>62806</bug>ModuleController cloning by Run behaves differently wether in GUI or Non GUI mode. Contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
<li><bug>62847</bug>If Controller cannot use variable for index exposed by LoopController/WhileController/ForEachController</li>
</ul>
<h3>Listeners</h3>
<ul>
<li><bug>62770</bug>Aggregate Graph throws <code>ArrayIndexOutOfBoundsException</code></li>
</ul>
<h3>Timers, Assertions, Config, Pre- &amp; Post-Processors</h3>
<ul>
<li><bug>62774</bug>XPath2Extractor : Scope variable is broken. Contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
<li><bug>62860</bug>JSON Extractor: Avoid NPE and noisy error message "<code>Error processing JSON content in</code>" when variable is not found</li>
</ul>
<h3>Functions</h3>
<ul>
</ul>
<h3>I18N</h3>
<ul>
</ul>
<h3>Report / Dashboard</h3>
<ul>
<li><bug>62777</bug>Web Report / Dashboard : Hide All in <code>Response Time Percentiles Over Time (successful responses)</code> fails.</li>
<li><bug>62780</bug>Web Report / Dashboard : Display All in <code>Response Time Vs Request</code> fails.</li>
<li><bug>62781</bug>Web Report / Dashboard : Display All in <code>Response Time Overview</code> fails.</li>
<li><bug>62782</bug>Web Report / Dashboard : Remove duplicate/unused dependencies</li>
<li><bug>62894</bug>Report / Dashboard : Throughput is in wrong column which is confusing as unit is millisecond</li>
<li><bug>63016</bug>Empty HTML report if source csv contains labels with quotes. Contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>Change <code>Test Action</code> (old name) to <code>Flow Control Action</code> in Component Reference documentation. Contributed by Ori Marko (orimarko at gmail.com)</li>
</ul>
<h3>General</h3>
<ul>
<li><bug>62745</bug>Fix undefined disabled icon. Contributed by Till Neunast (https://github.com/tilln)</li>
<li><bug>62743</bug>Client auth must be enabled on distributed testing</li>
<li><bug>62767</bug>NPE when searching under certain conditions. Contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
<li><bug>62790</bug><code>ArrayIndexOutOfBoundsException</code> when calling replace without selecting the first match</li>
<li><bug>62795</bug>JMeter master sometimes ends distributed test even though some of the slaves have not finished</li>
<li><bug>62336</bug><pr>396</pr>Some shortcuts are not working correctly on windows. Contributed by Michael Pavlov (michael.paulau at gmail.com)</li>
<li><bug>62889</bug>Format JSON Arrays when displayed with JSON Path Tester.</li>
<li><bug>62900</bug>ObjectProperty#getStringValue() can throw NullPointerException</li>
</ul>
<!-- =================== Thanks =================== -->
<ch_section>Thanks</ch_section>
<p>We thank all contributors mentioned in bug and improvement sections above:
</p>
<ul>
<li>Till Neunast (https://github.com/tilln)</li>
<li>Mingun (alexander_sergey at mail.ru)</li>
<li><a href="https://ubikloadpack.com">Ubik Load Pack</a></li>
<li>Artem Fedorov (artem.fedorov at blazemeter.com)</li>
<li>Stefan Seide (stefan at trilobyte-se.de)</li>
<li>刘士 (liushilive at outlook.com)</li>
<li>Michael Pavlov (michael.paulau at gmail.com)</li>
<li>Ori Marko (orimarko at gmail.com)</li>
<li>Paco (paco.xu at daocloud.io)</li>
<li>Hitesh Patel (hitesh.h.patel at gmail.com)</li>
<li>Sonali (arora.sonali99 at gmail.com)</li>
</ul>
<p>We also thank bug reporters who helped us improve JMeter.</p>
<ul>
</ul>
<p>
Apologies if we have omitted anyone else.
</p>
<!-- =================== Known bugs or issues related to JAVA Bugs =================== -->
<ch_section>Known problems and workarounds</ch_section>
<ul>
<li>View Results Tree may freeze rendering large response particularly if this response has no spaces, see <bugzilla>60816</bugzilla>.
This is due to an identified Java Bug <a href="https://bugs.openjdk.java.net/browse/JDK-8172336">UI stuck when calling <code>JEditorPane.setText()</code> or <code>JTextArea.setText()</code> with long text without space</a>.
</li>
</ul>
<ul>
<li>The Once Only controller behaves correctly under a Thread Group or Loop Controller,
but otherwise its behaviour is not consistent (or clearly specified).</li>
<li>
The numbers that appear to the left of the green box are the number of active threads / total number of threads,
the total number of threads only applies to a locally run test, otherwise it will show <code>0</code> (see <bugzilla>55510</bugzilla>).
</li>
<li>
Note that under some windows systems you may have this WARNING:
<source>
java.util.prefs.WindowsPreferences
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0
x80000002. Windows RegCreateKeyEx(&hellip;) returned error code 5.
</source>
The fix is to run JMeter as Administrator, it will create the registry key for you, then you can restart JMeter as a normal user and you won't have the warning anymore.
</li>
<li>
You may encounter the following error:
<source>java.security.cert.CertificateException: Certificates does not conform to algorithm constraints</source>
if you run a HTTPS request on a web site with a SSL certificate (itself or one of SSL certificates in its chain of trust) with a signature
algorithm using MD2 (like <code>md2WithRSAEncryption</code>) or with a SSL certificate with a size lower than 1024 bits.
This error is related to increased security in Java 8+.
<br></br>
To allow you to perform your HTTPS request, you can downgrade the security of your Java installation by editing
the Java <code>jdk.certpath.disabledAlgorithms</code> property. Remove the MD2 value or the constraint on size, depending on your case.
<br></br>
This property is in this file:
<source>JAVA_HOME/jre/lib/security/java.security</source>
See <bugzilla>56357</bugzilla> for details.
</li>
<li>
Under Mac OSX Aggregate Graph will show wrong values due to mirroring effect on numbers.
This is due to a known Java bug, see Bug <a href="https://bugs.openjdk.java.net/browse/JDK-8065373" >JDK-8065373</a>
The fix is to use JDK8_u45 or later.
</li>
<li>
View Results Tree may fail to display some HTML code under HTML renderer, see <bugzilla>54586</bugzilla>.
This is due to a known Java bug which fails to parse "<code>px</code>" units in row/col attributes.
See Bug <a href="https://bugs.openjdk.java.net/browse/JDK-8031109" >JDK-8031109</a>
The fix is to use JDK9 b65 or later.
</li>
<li>
JTable selection with keyboard (<keycombo><keysym>SHIFT</keysym><keysym>up/down</keysym></keycombo>) is totally unusable with Java 7 on Mac OSX.
This is due to a known Java bug <a href="https://bugs.openjdk.java.net/browse/JDK-8025126" >JDK-8025126</a>
The fix is to use JDK 8 b132 or later.
</li>
</ul>
</section>
</body>
</document>