The Mark59 Performance and Volume Framework simplifies JMeter performance testing via automated test execution, reporting, SLA comparison and trend analysis.
Java Selenium can also be incorporated to accelerate script development.


Mark59 is an open-source Java-based set of tools, with the aim of providing the capability of performance testing applications in a regular, repeatable manner, by having a focus on the automated detection of SLA breaches in a test, and highlighting trends and issues with the application under test over time. It is designed so that this is achievable without necessarily needing to have purely specialist performance test skills.We’ve avoided calling Mark59 a ‘framework’, as that word is often used in test automation to describe ‘clever’ software hiding or overlying core technologies, so people using them don't have a fair chance to feel motivated and to learn the proper skills they need in the industry. Rather, for example, our integration of two of two popular products in test automation, JMeter and Selenium, along with the work we have put into our examples and documentation, hopefully gives Performance Testers and Automation Testers an insight into scripting skills that can be easily learnt and benefit each other’s skill sets.Mark59 was designed to run on Windows or Linux-based operating systems, and is compatible with Macs.

Sample Screens:


Select the appropriate zip version to download the executable jar files and samples. Linux and Windows compatible.As of Mark59 v3+ all projects are contained in a single zip file.If you are looking for the source code, see:

Current Release: (242 MB download via Google Drive link)Release Summary:Version 5.5Changes for this release:

  • Backward incompatibilities with previous 5.x JMeter releases resolved

  • (tested on JMeter 5.5, 5.6.2)

  • Fix JUnit tests in the build (some tests where not being executed)

  • Sample script DataHunterLifecycleScriptUsingRestApiClient renamed to DataHunterLifecyclePvtNoSeleniumUsesRestApi and now includes example of async processing via Api

  • Include a FluentWaitVariablePolling class in dsl samples, usage demonstrated in DataHunterLifecyclePvtScript sample script

  • Dependencies: JMeter to 5.6.2, spring-boot to 3.1.2, selenium to 4.11.0 (to chrome v115)

Previous Release: (240.6 MB download via Google Drive link)Release Summary:Version 5.4Changes for this release:

  • This release was built and tested using JMeter 5.5. There are incompatibilities with the recently released 5.6 version of JMeter, so please deploy to JMeter 5.5. We plan to work on a JMeter 5.6 compatible version of Mark59 as a priority for our next release.

  • Metrics - PowerShell option added.

  • Metrics - SSH Private/Public Key authentication option added for Linux/Unix connections.

  • Metrics - Parameters (string substition) added for non-Groovy Commands and Profiles.

  • Metrics - Database Updates: Increase size of scripts allowed, reconfigured and added new samples (in particular for PowerShell and Linux SSH Keys). Please review databaseScripts MYSQLmark59v5.3tov5.4conversion.sql / POSTGRESmark59v5.3tov5.4conversion.sql

  • Metrics - (Breaking Change) Predefined variable %METRICSBASEDIR% has been renamed to ${METRICSBASEDIR}, in line with the newly added paramters format convention. Note this is only a breaking change if you have referenced it in your own WMIC scripts - the samples on the database have been updated.

  • Metrics - Multiple improvements to data-entry screens (particularly around Commands and Profiles).

  • Metrics - Logging improved. 'Actual Commmand Run' is now only provided when running directly from the Web Application.

  • Metrics - Time taken for Profile execution is shown when running directly in the Web Application.

  • Metrics - Web Application TimeOut extended to 30 min (code change).

  • Metrics - Improved documentation on the Web Application's Overview Page.

  • Java 8 Compatibility - Mark59 Projects refactored so that all artefacts that are deployed to JMeter are compatible with Java 8+. Note that the Mark59 Web Applications are all built uses Java 17, and we suggest using Java 17 for JMeter instances as well if possible.

  • Multiple small improvements to JavaDocs

  • Selenium to 4.10.0 (chrome v114+), spring-boot to 3.1.0

  • Updated documentation

View for additional details and older releases.


Our Mark59 User Guide documentation can be found below:

Get a feeling of how it works in a few minutes by going through the 'Quick Start' chapters.


The Background to Mark59

Mark59 started from some ideas conceived around 2014 and has since developed to our latest release. It was developed by a team of working Performance and Volume testers at the Australian Insurance Company IAG in Melbourne. Our team, more out of necessity to maintain multiple and varied applications, over time changed practices from a traditional way of testing to something very similar to what is now called Dev Ops, and created a set of tools on the way that has become Mark59.A core team has worked on the project for most of its life, but many, many ideas came from the excellent Performance Testers that have been part of the team over the years. Not to mention (the sometimes rather blunt but valuable) feedback we have received from our client projects and others. We hope we haven't missed too many from the acknowledgements, but great ideas and suggestions have come to us from many, so we fear we have.

The People

The Core Team:

  • Philip Webb

  • Dhivya Raghavan

  • Greg Johnstone

Major Contributors:

  • Michael Cohen

  • John Gallagher

  • Sanman Basavegowda

  • David Nguyen

  • Edmond Lew

Grateful Acknowledgements:

  • Stephen Townshend

  • Srivalli Krishnardhula

  • Pankaj Harde

  • Mallamma Ganigi

  • Gaurav Shukla

  • Nikolai Chetverikov

The name 'Mark59'

The biblical story of the 'Exorcism of the Gerasene demonic' appears in the New Testament in all of the synoptic gospels (Mathew, Mark and Luke), but the most well known account is from Mark's gospel. At a critical point in the story Jesus challenges the demon in a possessed man to name itself, and discovers he is not facing one demon but many when the famous reply comes "My name is Legion, for we are many" (Mark 5:9).We couldn't help relating our (admittedly trivial) struggles with turning a single Selenium script into many with this wonderful story, and so ''.


You can contact us to give suggestions or feedback via the form below.
Note that we are a small working team, but we will do our best to respond.