Aggregate Report in Jmeter is one of the most essential listener. It is almost same as Summary Report except Aggregate Report gives few more parameters like, “Median”, “90% Line”, “95% Line” and “99% Line”. Before going further it’s better to have understanding of How to Record and Run Jmeter Script & Summary Report.

In this article we are going to focus on understanding and analysis of every fields Aggregate Report provides. Basically it creates a result table with a row for each sample separately and provide information about “Average Time”, “Median value”, “90% Line”, “95% Line”, “99% Line”, “Min Response Time”, “Max Response Time”, “Error %”, “Throughput” & “KB/Sec value”. You can also find the Total value for each one of these field at the bottom of the table.

For Demo purpose we already have recorded few pages of Testing Journals and we will run that script with 10 users. Before we start the execution, let’s see how to add Aggregate Report to Jmeter Test Plan.


How to Add Summary Report?

To add: Right Click on Thread Group > Add > Listener > Aggregate Report.

Aggregate Report

Now, let’s understand each component separately.

Name: Here you can mention the the name of the Summary report.

Read result from file: If you already have the execution report exported from your previous Test runs, you can browse the file and Aggregate Report will load result in the table.

Log/Display only: Before starting the execution you can mark this option as “Errors” or “Successes” or none. It will show the result accordingly in the table.

Save Table Data: This filed is displayed at the bottom of Aggregate Report screen. You can export the execution result from the table into CSV file and it gives you option to include/omit “Group name in table” and “Table Header”.

Understanding Aggregate Report Table:

Now we will look at the columns of Report table. Let’s understand the significance of different columns:

Aggregate Report

Label: It is the name/URL for the specific HTTP(s) Request. If you have selected “Include group name in label?” option then the name of the Thread Group is applied as the prefix to each label.

#Samples: This indicates the number of virtual users per request.

Average: It is the average time taken by all the samples to execute specific label. In our case, average time for Label 1 is 986 milliseconds & total average time is 667 milliseconds.

Min: The shortest time taken by a sample for specific label. If we look at Min value for Label 1 then, out of 20 samples shortest response time one of the sample had was 584 milliseconds.

Max: The longest time taken by a sample for specific label. If we look at Max value for Label 1 then, out of 20 samples longest response time one of the sample had was 2867 milliseconds.

Std. Dev.: This shows the set of exceptional cases which were deviating from the average value of sample response time. The lesser this value more consistent the data. Standard deviation should be less than or equal to half of the average time for a label.

Error%: Percentage of Failed requests per Label.

Throughput: Throughput is the number of request that are processed per time unit(seconds, minutes, hours) by the server. This time is calculated from the start of first sample to the end of the last sample. Larger throughput is better.

KB/Sec: This indicates the amount of data downloaded from server during the performance test execution. In short, it is the Throughput measured in Kilobytes per second.

Now let’s understand remaining result parameters provided by Aggregate Report:

90% Line: 90% of the samples took no more than this time. The remaining samples took at least as long as this. (90th percentile)

To calculate 90%, list down all the transaction values and re-order by their values in descending order. Now exclude top 10% transactions of your total list.

The highest value left is the 90th percentile.

95% Line: 95% of the samples took no more than this time. The remaining samples took at least as long as this. (95th percentile)

To calculate 95%, list down all the transaction values and re-order by their values in descending order. Now exclude top 5% transactions of your total list.

The highest value left is the 95th percentile.

99% Line: 99% of the samples took no more than this time. The remaining samples took at least as long as this. (99th percentile)

To calculate 99%, list down all the transaction values and re-order by their values in descending order. Now exclude top 1% transactions of your total list.

The highest value left is the 99th percentile.

Median: It is the time in the middle of a set of samples result. It indicates that 50% of the samples took no more than this time i.e the remainder took at least as long.

Hope you understood the features of Aggregate Report quite well and now can use it more efficiently. Let us know if you want us to include more detail by providing your valuable comment. Thank You & Happy Testing!!


Share This Article :