Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Get Load Test Reports From JMeter

DZone's Guide to

Get Load Test Reports From JMeter

Make sure you're getting the most of your JMeter load testing by getting a readable report for better analysis. Read on to learn how.

· Performance Zone
Free Resource

So the test is finally done and it is time to analyze and optimize, right? No? What do you need to do after a JMeter test to evaluate its results?

You know how the result of a JMeter load test is a few XML or CSV files... and that's it. In practice, that often means that the tester looks at the numbers and “evaluates the important stuff.” That also usually means that some other “important stuff” is missing and the test is essentially worthless. That's not real reporting or analysis.

You can try to visualize the results by filling listeners with the output files and saving them as a graph or table (but only if the listener saves the log to the disk, otherwise you won't see anything). But even if everything works as it should, then you only see individual parts and not a holistic view of the results. That's a lot of work for a pretty paltry outcome.

This should just be a lot easier.

Would You Like a One-Click Test Report?

During the test, you can see the live status of everything you'd have to search for in a pile of numbers in JMeter's results.

Once the test is done, the load test report is generated with one-click on Generate report button.

Check out this example report.

You can easily compare multiple graphs using the intersection tool in the right bottom corner. Pinpoint the exact moment on a graph and compare it with the other graphs. This allows you to discover unexpected connections.

Smartmeter report analysis

Acceptance Criteria

Acceptance criteria enables auto-evaluation of test results. Quickly see if they were met or not. Red means a failure. Take advantage of continuous integration tools to evaluate tests on your behalf!

Acceptance criteria

Errors Overview

When an error occurs, you need to see a full detail of it - requested URL, request headers and body, response code, headers and body, and assertion message. Everything is included in the SmartMeter.io report.

Errors overview

Trend Analysis

Are you running your tests multiple times or as a part of your CI pipeline? If so, you will appreciate the Trend analysis page. No configuration is required; trends are formed automatically based on the test script file name.

Getting a Report From JMeter

Load a log file from JMeter (.jtl file) in an XML format to the Report Generator and get a report with one-click. SmartMeter.io 1.5.0 or newer is required.

  1. Open SmartMeter.io Editor (Create/Edit Scenario on Welcome screen).

  2. Right-click on WorkBench (the last element in the component tree on the left).

  3. Select Add / Non-Test Elements / et@sm - Report Generator.

  4. Click Browse and select the JMeter log file.

  5. Optionally, click Browse and select the test script file (to evaluate acceptance criteria and get Trend analysis).

  6. Click the Generate report button

Report generator componentAlternatively, run your JMeter test script in SmartMeter.io and get the test report the usual way, or easily create a new one. Check out the Quick guide to get some starting tips.

There’s More

The entire report, log, and test itself are backed-up while the report is created. This means you'll never lose old results and can compare them to new ones.

You can also customize the report because its template is a simple HTML file that makes it easy to add your corporate logo or use the right colors to make it stand out in a presentation.

If you're missing something, or something is not relevant, you can re-generate it and set exactly what you want to see, but more on that another time.

Now, get to testing!

Topics:
performance testing ,jmeter ,jmeter 3.2 ,performance ,java ,load testing ,continuous integration

Published at DZone with permission of Martin Krutak. See the original article here.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}