As mentioned in the Apache Jmeter official website, it is a pure Java based application designed as Load Testing Tool and for efficiently doing analysis & performance measurement of Web applications or variety of services. Apache Jmeter is an open source Performance Testing tool with some outstanding abilities. Jmeter supports wide range of features required for rich performance testing process. With Jmeter version 3.0 and above a new feature is added for excellent reporting. This feature is called Report Dashboard.
In this article, we are going to discuss about what is Report Dashboard, how to configure it and some of the cool features it provide. Before going further if you want to read more about Jmeter Basics, Installation & Features access below mentioned links.
Introduction to Jmeter as Performance Testing Tool
What is Jmeter Report Dashboard?
Jmeter offers various reporting structures for better understanding and analysis of execution result, such as:
– Dynamic HTML Graphs(APDEX, Summary Report, Error Report)
– Summariser for more readable duration
– HTML reporting dashboard.
Reporting Dashboard offers many detailed content but APDEX certainly is the most valuable one. APDEX(Application Performance Index) is an open standard developed by an alliance of companies. It defines the standard method for reporting and comparing the performance of software.
Along with this, Report Dashboard provides a Pie Chart showcasing number of Passed/failed requests. So, you can get the high level idea about health of you performance test execution.
Next is a Statistics Table providing Summary Report of the execution in tabular format. This table shows content from Summary Report and Aggregate Report Listeners. Error table shows the types of errors encountered during the execution along with the percentage.
In Report Dashboard we also get variety of Graphical Charts. We will understand each one of them but let’s first look at the configuration part.
Configure Report Dashboard
There are 2 ways to generate Report Dashboard. There might be a case you will find issues in producing reports. Let’s first fulfill required dependencies. Go to bin folder of your Jmeter 3.0 installation. You will find a file user.properties. Add below lines and save the file. Restart Jmeter to apply the effect of recent changes.
- Jmeter saves result in .jtl or .csv format. These files can be used to generate Report Dashboard. You can use the existing .jtl or .csv file generated from your previous execution or directly produce Report Dashboard right after Test execution.
- To generate Report Dashboard from already saved .jtl or .csv file, you need to run below command. First navigate to bin folder of Jmeter’s location and open command prompt.
jmeter -g <PATH TO JTL OR CSV FILE> -o <PATH OF FOLDER WHERE YOU WISH TO SAVE REPORT DASHBOARD>
- To generate Report Dashboard after execution run below mentioned command. Here you run the Jmeter script through command line and in the same run you generate the report.
jmeter -n -t <PATH TO JMETER SCRIPT(JMX)> -l <PATH TO JTL FILE> -e -o <PATH OF FOLDER WHERE YOU WISH TO SAVE REPORT DASHBOARD>
- After you execute these command, Jmeter will create a new folder at the path you have mentioned after command “-o”. Make sure that there is no folder available with the same name. Under that folder you will find index.html which you can open in any browser you want.
Graphical Charts in Report Dashboard
There are various charts you can find under index.html to analyse behavior of performance test execution. You can configure these zoom-able charts to show/hide samples. There is an option to download these charts in PNG format. Let’s look at them one by one.
– Response Time Over Time : It includes result from Transaction Controller Samples & represents the average response time over time.
– Bytes throughput Over Time : It ignores result from Transaction Controller Samples & represents the throughput of received and sent data over time.
– Latencies Over Time : It includes result from Transaction Controller Samples & represents the average latency time over time.
– Hits Per Second : It ignores result from Transaction Controller Samples & represents the rate of finished request over time.
– Codes Per Second : It ignores result from Transaction Controller Samples & represents the rate of response codes over time.
– Transactions Per Second : It includes result from Transaction Controller Samples & represents the rate of transaction by sample name over time.
– Response Time Vs Request : It ignores result from Transaction Controller Samples & represents the median and average response time depending on the number of current requests.
– Latency vs Request : It ignores result from Transaction Controller Samples & represents the median and average latency time depending on the number of current requests.
– Response Time Percentiles : It includes result from Transaction Controller Samples & represents the percentiles of the elapsed time over time.
– Active Threads Over Time : It represents the number of active Threads(Users) over time.
– Times Vs Threads : It represents the average response time depending on the number of current active threads.
– Response Time Distribution : It includes result from Transaction Controller Samples & represents the distribution of the samples depending on their elapsed time and name.
Hope you have enjoyed reading this article. If you have found something interesting about Jmeter Report Dashboard which is not mentioned here, please let us know. Utilize this awesome feature and if you have any issue/query, post a comment.
May the force be with You!