JMeter 5.2 Release Notes
Apache JMeter 5.2 release notes with 46 improvements and 26 bug fixes, plus upgrade notes from the official changelog.
Change summary
Section titled “Change summary”| Section | Changes |
|---|---|
| Incompatible changes | 3 |
| Improvements | 46 |
| Bug fixes | 26 |
| Non-functional changes | 8 |
New and Noteworthy
Section titled “New and Noteworthy”This release is a major release. Please see the Changes history page to view the last release notes of version 5.1.1.
Incompatible changes
Section titled “Incompatible changes”- 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 matcheshad 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
Improvements
Section titled “Improvements”HTTP Samplers and Test Script Recorder
Section titled “HTTP Samplers and Test Script Recorder”- Bug 63450HTTP(S) Test Script Recorder: Put number at end instead of beginning
- Bug 63790Embedded Resources download: Optimize CSS parsing by removing source location
Other samplers
Section titled “Other samplers”- Bug 63406JDBC connection configuration: new option for pre-initialize to initialize the connection pool. Contributed by Franz Schwab (franz.schwab at exasol.com)
- Bug 63561JDBC Request: Allow to only fetch a certain number of rows. Contributed by Franz Schwab (franz.schwab at exasol.com)
- Bug 63801Add Bolt protocol support for Neo4j database. Contributed by GraphAware (www.graphaware.com)
Controllers
Section titled “Controllers”- Bug 63565If Controller: GC issue with JMeter during the endurance run when using with “Interpret Condition as Variable Expression?” unchecked => Improve documentation
Listeners
Section titled “Listeners”- Bug 63720BackendListener: InfluxDBBackendListenerClient Add support for InfluxDB 2. Contributed by Jakub Bednář (https://github.com/bednar)
- Bug 63770View Results Tree: Add JMESPath Tester. Contributed by Ubik Load Pack (support at ubikloadpack.com)
Timers, Assertions, Config, Pre- & Post-Processors
Section titled “Timers, Assertions, Config, Pre- & Post-Processors”- Bug 62863Enable PKCS11 keystores for usage with KeyStore Manager. Based on patch by Clifford Harms (clifford.harms at gmail.com).
- PR#457Slight performance improvement in PoissonRandomTimer by using ThreadLocalRandom. Based on a patch by Xia Li.
- Bug 62787New
XPath2 Assertionsupporting XPath2 with better performances thanXPath Assertion. Contributed by Ubik Load Pack (support at ubikloadpack.com) - Bug 63643Skip BOM on files opened through
FileServerand use the BOM to detect the character encoding, if none is given explicitly. Reported by Havlicek Honza (havlicek.honza at gmail.com) - Bug 63727New
JMESPath Extractorelement to ease extraction from JSON using JMESPath technology. Contributed by Ubik Load Pack (support at ubikloadpack.com) - Bug 63763New
JMESPath Assertionelement to ease assertion on JSON using JMESPath technology. Contributed by Ubik Load Pack (support at ubikloadpack.com) - Bug 63775Allow Boundary Extractor to accept empty boundaries
Functions
Section titled “Functions”- Bug 63219New function
__StringToFileto save/append a string into a file. Contributed by Ubik Load Pack (support at ubikloadpack.com) - Use
AtomicIntegerfor__counterinstead of synchronization on our own
Report / Dashboard
Section titled “Report / Dashboard”- Bug 63471
StringConverters used for report generation should ignore white space around numbers.
General
Section titled “General”- Bug 63396JSR223 Test Elements: Description of Parameters is misleading, same for Script
- Bug 63480XPathAssertion and XPathAssertion2: Improve test coverage for input coming from variable. Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63452Tools / 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 63419Tools / 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 63760JOrphanUtils: add random alphanumeric password generator
- Bug 63355View Results Tree: Browser view option is not Available since Java 11, document how to make it available, see this
- Bug 62861Thread 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 63616Fix 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)
Bug fixes
Section titled “Bug fixes”HTTP Samplers and Test Script Recorder
Section titled “HTTP Samplers and Test Script Recorder”- Bug 63298HTTP Requests with encoded URLs are being sent in decoded format
- Bug 63364When 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 63129JMeter 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 62672HTTP 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 63574HTTP Cache Manager does not cache resource if
Cache-Controlheader is missing.
Other Samplers
Section titled “Other Samplers”- Bug 63442Reduce scanning for
LogParserimplementations in AccessLogSamplerBeanInfo. - Bug 63563LdapExtSampler: When sampler fails with exception differing from NamingException, no SampleResult is generated
- Bug 63469JMSPublisher: Race condition in jms.client.ClientPool#clearClient
Controllers
Section titled “Controllers”Listeners
Section titled “Listeners”- Bug 63319
ArrayIndexOutOfBoundsExceptionin Aggregate Graph when selecting 90 % or 95 % columns - Bug 63423Selection of table rows in Aggregate Graph gets lost too often
- Bug 63347View result tree: The search field is so small that even a single character is not visible on Windows 7
- Bug 63433ListenerNotifier: Detected problem in Listener NullPointerException if filename is null. Contributed by Ubik Load Pack (support at ubikloadpack.com)
- Bug 63674Strip results with subresults deeper in their hierarchy when DataStripping is enabled
Timers, Assertions, Config, Pre- & Post-Processors
Section titled “Timers, Assertions, Config, Pre- & Post-Processors”- Bug 63455XPath Assertion:
True if nothing matchesdoes not work if XPath expression returns a boolean. Contributed by Ubik Load Pack (support at ubikloadpack.com)
Functions
Section titled “Functions”Report / Dashboard
Section titled “Report / Dashboard”Documentation
Section titled “Documentation”- Bug 63513Add MariaDB examples to JDBC documentation. Contributed by Ori Marko (orimarko at gmail.com)
- Bug 63484Add notes to use Apache Velocity as JSR223 script language. Based on a patch by Ori Marko (orimarko at gmail.com)
- Bug 63519PR#471Use correct method
getLabelResource()in JMeter tutorial. Contributed by Sun Tao (buzzerrookie at hotmail.com>)
General
Section titled “General”- Bug 63394JMeter 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 63464image/svg+xml is wrongly considered as binary
- Bug 63490At end of scheduler duration lots of Samplers gets executed at the same time
- PR#480PR#482Fix a few typos in comments and log messages. Based on patch by Anass Benomar (anassbenomar at gmail.com)
- Bug 63751Correct a typo in Chinese translations. Reported by Jinliang Wang (wjl31802 at 126.com)
- Bug 63723Distributed testing: JMeter controller node ends distributed test though some threads still are active
- Bug 63614Distributed 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 63793Fix unsecure XML Parsing
Non-functional changes
Section titled “Non-functional changes”- Migrated from subversion to Git
- Bug 63630Switch build from Apache Ant to Gradle
- Bug 63529Add 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
CompareAssertionand other locations. Based on patch by Graham Russell (graham at ham1.co.uk) - PR#491Increase Graphite metrics coverage. Contributed by Graham Russell (graham at ham1.co.uk)
- PR#520Replace anonymous classes with lambda expressions. Contributed by Graham Russell (graham at ham1.co.uk).
- PR#524Migration from JUnit 4 to JUnit 5. Contributed by Graham Russell (graham at ham1.co.uk).
Thanks
Section titled “Thanks”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.