Changes
|
Version 5.2
Summary
This release is a major release. Please see the Changes history page
to view the last release notes of version 5.1.1.
- HTTP(S) Test Script Recorder now appends number at end of names, while previously it added it at beginning. See Bug 63450
- When using XPath Assertion with an XPath expression returning a boolean, True if nothing matches had no effect and always returned true, see Bug 63455
- XML parsing now refuses unsecure XML, this has impacts on the following features:
- XMLAssertion
- XMLSchemAssertion
- XPath function
- XPath 1 & 2 Extractors
- XPath 1 & 2 Assertions
HTTP Samplers and Test Script Recorder
- Bug 63450
- HTTP(S) Test Script Recorder: Put number at end instead of beginning
- Bug 63790
- Embedded Resources download: Optimize CSS parsing by removing source location
Other samplers
- Bug 63406
- JDBC connection configuration: new option for pre-initialize to initialize the connection pool. Contributed by Franz Schwab (franz.schwab at exasol.com)
- Bug 63561
- JDBC Request: Allow to only fetch a certain number of rows. Contributed by Franz Schwab (franz.schwab at exasol.com)
- Bug 63801
- Add Bolt protocol support for Neo4j database. Contributed by GraphAware (www.graphaware.com)
Controllers
- Bug 63565
- If Controller: GC issue with JMeter during the endurance run when using with "Interpret Condition as Variable Expression?" unchecked => Improve documentation
Listeners
- Bug 63720
- BackendListener: InfluxDBBackendListenerClient Add support for InfluxDB 2. Contributed by Jakub Bednář (https://github.com/bednar)
- Bug 63770
- View Results Tree: Add JMESPath Tester. Contributed by Ubik Load Pack (support at ubikloadpack.com)
Timers, Assertions, Config, Pre- & Post-Processors
- Bug 62863
- Enable PKCS11 keystores for usage with KeyStore Manager. Based on patch by Clifford Harms (clifford.harms at gmail.com).
- Pull request #457 - Slight performance improvement in PoissonRandomTimer by using ThreadLocalRandom. Based on a patch by Xia Li.
- Bug 62787
- New XPath2 Assertion supporting XPath2 with better performances than XPath Assertion. Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63643
- Skip BOM on files opened through FileServer and use the BOM to detect the character encoding,
if none is given explicitly. Reported by Havlicek Honza (havlicek.honza at gmail.com)
- Bug 63727
- New JMESPath Extractor element to ease extraction from JSON using JMESPath technology. Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63763
- New JMESPath Assertion element to ease assertion on JSON using JMESPath technology. Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63775
- Allow Boundary Extractor to accept empty boundaries
Functions
- Bug 63219
- New function __StringToFile to save/append a string into a file. Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Use AtomicInteger for __counter instead of synchronization on our own
I18NReport / Dashboard
- Bug 63471
- StringConverters used for report generation should ignore white space around numbers.
General
- Bug 63396
- JSR223 Test Elements: Description of Parameters is misleading, same for Script
- Bug 63480
- XPathAssertion and XPathAssertion2: Improve test coverage for input coming from variable. Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63452
- Tools / Import from cURL: Complete coverage of all command line options that are valid in JMeter use case. Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63419
- Tools / Import from cURL: Add ability to import a set of cURL commands from a file. Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63760
- JOrphanUtils: add random alphanumeric password generator
- Bug 63355
- View Results Tree: Browser view option is not Available since Java 11, document how to make it available, see this
- Bug 62861
- Thread Group: Provide ability to configure whether a new iteration is a new user or same user (Would be applied on Cookie Manager, Cache Manager and httpclient.reset_state_on_thread_group_iteration). Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63616
- Fix Javadoc:
 |
 |
 |
 |
JMeterContext#getThreadNum() |
 |
 |
 |
 |
starts at 0 and not 1. Contributed by Ori Marko (orimarko at gmail.com)
- Updated to httpclient/httpmime 4.5.10 (from 4.5.7)
- Updated to dnsjava 2.1.9 (from 2.1.8)
- Updated to jsoup 1.12.1 (from 1.11.3)
- Updated to rsyntaxtextarea 3.0.4 (from 3.0.2)
- Updated to caffeine 2.8.0 (from 2.6.2)
- Updated to commons-codec 1.13 (from 1.11)
- Updated to commons-lang3 3.9 (from 3.8.1)
- Updated to commons-pool 2.7 (from 2.6)
- Updated to commons-text 1.8 (from 1.6)
- Updated to freemarker 2.3.29 (from 2.3.28)
- Updated to httpcore/httpcore-nio 4.12 (from 4.11)
- Updated to jodd 5.0.13 (from 5.0.6)
- Updated to log4j 2.12.1 (from 2.11.1)
- Updated to ph-commons 9.3.7 (from 9.2.1)
- Updated to ph-css 6.2.0 (from 6.1.1)
- Updated to Mozilla Rhino 1.7.11 (from 1.7.10)
- Updated to Saxon-HE 9.9.1-5 (from 9.9.1-1)
- Updated to slf4j 1.7.28 (from 1.7.25)
- Updated to tika-core and tika-parsers 1.22 (from 1.21)
- Updated jackson-annotations, jackson-core and jackson-databind to 2.9.10 (from 2.9.8)
- Migrated from subversion to Git
- Bug 63630
- Switch build from Apache Ant to Gradle
- Bug 63529
- Add more unit tests for org.apache.jorphan.util.JOrphanUtils. Contributed by John Bergqvist(John.Bergqvist at diffblue.com)
- Updated to latest checkstyle (version 8.22)
- Clean-up of code in CompareAssertion and other locations. Based on patch by Graham Russell (graham at ham1.co.uk)
- Pull request #491 - Increase Graphite metrics coverage. Contributed by Graham Russell (graham at ham1.co.uk)
- Pull request #520 - Replace anonymous classes with lambda expressions. Contributed by Graham Russell (graham at ham1.co.uk).
- Pull request #524 - Migration from JUnit 4 to JUnit 5. Contributed by Graham Russell (graham at ham1.co.uk).
HTTP Samplers and Test Script Recorder
- Bug 63298
- HTTP Requests with encoded URLs are being sent in decoded format
- Bug 63364
- When setting subresults.disable_renaming=true, sub results are still renamed using their parent SampleLabel while they shouldn't. Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63129
- JMeter can not identify encoding during first time page submission. Based partly on analysis and PR made by Naveen Nandwani (naveen.nandwani at india.nec.com)
- Bug 62672
- HTTP Request sends double requests when using proxy with authentication. Based on patch by Artem Fedorov (artem.fedorov at blazemeter.com) and contributed by BlazeMeter.
- Bug 63574
- HTTP Cache Manager does not cache resource if Cache-Control header is missing.
Other Samplers
- Bug 63442
- Reduce scanning for LogParser implementations in AccessLogSamplerBeanInfo.
- Bug 63563
- LdapExtSampler: When sampler fails with exception differing from NamingException, no SampleResult is generated
- Bug 63469
- JMSPublisher: Race condition in jms.client.ClientPool#clearClient
ControllersListeners
- Bug 63319
- ArrayIndexOutOfBoundsException in Aggregate Graph when selecting 90 % or 95 % columns
- Bug 63423
- Selection of table rows in Aggregate Graph gets lost too often
- Bug 63347
- View result tree: The search field is so small that even a single character is not visible on Windows 7
- Bug 63433
- ListenerNotifier: Detected problem in Listener NullPointerException if filename is null. Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63674
- Strip results with subresults deeper in their hierarchy when DataStripping is enabled
Timers, Assertions, Config, Pre- & Post-Processors
- Bug 63455
- XPath Assertion: True if nothing matches does not work if XPath expression returns a boolean. Contributed by Ubik Load Pack (support at ubikloadpack.com)
FunctionsI18NReport / DashboardDocumentation
- Bug 63513
- Add MariaDB examples to JDBC documentation. Contributed by Ori Marko (orimarko at gmail.com)
- Bug 63484
- Add notes to use Apache Velocity as JSR223 script language. Based on a patch by Ori Marko (orimarko at gmail.com)
- Bug 63519
- Pull request #471 - Use correct method getLabelResource() in JMeter tutorial. Contributed by Sun Tao (buzzerrookie at hotmail.com>)
General
- Bug 63394
- JMeter should fail with non-zero when test execution fails (due to missing test plan or other reason). Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63464
- image/svg+xml is wrongly considered as binary
- Bug 63490
- At end of scheduler duration lots of Samplers gets executed at the same time
- Pull request #480 - Pull request #482 - Fix a few typos in comments and log messages. Based on patch by Anass Benomar (anassbenomar at gmail.com)
- Bug 63751
- Correct a typo in Chinese translations. Reported by Jinliang Wang (wjl31802 at 126.com)
- Bug 63723
- Distributed testing: JMeter master ends distributed test though some threads still are active
- Bug 63614
- Distributed testing: Unable to generate Dashboard report at end of load test
- Bug 63862
- Search Dialog / Search in View Results Tree: Uncaught exception if regex is checked and regex is invalid
- Bug 63793
- Fix unsecure XML Parsing
We thank all contributors mentioned in bug and improvement sections above:
- Clifford Harms (clifford.harms at gmail.com)
- Ubik Load Pack
- Xia Li
- Naveen Nandwani (naveen.nandwani at india.nec.com)
- Artem Fedorov (artem.fedorov at blazemeter.com)
- Ori Marko (orimarko at gmail.com)
- Sun Tao (buzzerrookie at hotmail.com)
- John Bergqvist (John.Bergqvist at diffblue.com)
- Franz Schwab (franz.schwab at exasol.com)
- Graham Russell (graham at ham1.co.uk)
- Anass Benomar (anassbenomar at gmail.com)
- Jakub Bednář
- Pascal Schumacher (pascalschumacher at apache.org)
- GraphAware
We also thank bug reporters who helped us improve JMeter.
- Sergiy Iampol (sergiy.iampol at playtech.com)
- Brian Tully (brian.tully at acquia.com)
- Amer Ghazal (amerghazal at gmail.com)
- Stefan Seide (stefan at trilobyte-se.de)
- Havlicek Honza (havlicek.honza at gmail.com)
- Pierre Astruc (pierre.astruc at evertest.com)
- Jinliang Wang (wjl31802 at 126.com)
Apologies if we have omitted anyone else.
- The Once Only controller behaves correctly under a Thread Group or Loop Controller,
but otherwise its behaviour is not consistent (or clearly specified).
-
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 0 (see Bug 55510
).
-
Note that under some windows systems you may have this WARNING:
 |
 |
 |
 |
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.
|
 |
 |
 |
 |
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.
-
You may encounter the following error:
 |
 |
 |
 |
java.security.cert.CertificateException: Certificates does not conform to algorithm constraints |
 |
 |
 |
 |
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 md2WithRSAEncryption) or with a SSL certificate with a size lower than 1024 bits.
This error is related to increased security in Java 8+.
To allow you to perform your HTTPS request, you can downgrade the security of your Java installation by editing
the Java jdk.certpath.disabledAlgorithms property. Remove the MD2 value or the constraint on size, depending on your case.
This property is in this file:
 |
 |
 |
 |
JAVA_HOME/jre/lib/security/java.security |
 |
 |
 |
 |
See Bug 56357
for details.
-
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 JDK-8065373
The fix is to use JDK8_u45 or later.
-
View Results Tree may fail to display some HTML code under HTML renderer, see Bug 54586
.
This is due to a known Java bug which fails to parse "px" units in row/col attributes.
See Bug JDK-8031109
The fix is to use JDK9 b65 or later.
-
JTable selection with keyboard (SHIFT + up/down) is totally unusable with Java 7 on Mac OSX.
This is due to a known Java bug JDK-8025126
The fix is to use JDK 8 b132 or later.
-
Since Java 11 the JavaScript implementation Nashorn has been deprecated.
Java will emit the following deprecation warnings, if you are using JavaScript based on Nashorn.
 |
 |
 |
 |
Warning: Nashorn engine is planned to be removed from a future JDK release
|
 |
 |
 |
 |
To silence these warnings, add -Dnashorn.args=--no-deprecation-warning to your Java arguments.
That can be achieved by setting the enviroment variable JVM_ARGS
 |
 |
 |
 |
export JVM_ARGS="-Dnashorn.args=--no-deprecation-warning"
|
 |
 |
 |
 |
|
|
|