Apache Jmeter



  1. Apache JMeter: A Practical Beginner's Guide to Automated Testing and Performance Measurement for Your Websites - By Emily H. Halili (Packt Publishing). Performance Testing with JMeter 2.9 - By Bayo Erinle (Packt Publishing); guide to test web applications using Apache JMeter with practical, hands-on examples.
  2. May 01, 2019 Apache JMeter is an open-source performance testing tool; developed in Java. JMeter does not require any purchasing or licensing cost. It means that you can conduct the performance testing of an application or a software system without spending a single penny on the tool.

Click on the ‘Apache-JMeter-5.0.zip’ link to download the binary zip file of JMeter. By default, the file will be downloaded in the Downloads folder. Open the folder, right-click on the zip file and click on Extract Here from the pop-up menu. Dec 13, 2012 Apache JMeter. Apache JMeter is open source software, a 100% pure Java desktop application designed to load test functional behavior and measure performance. JMeter is accessible to everybody, from the largest corporations down to individuals running their own consultancy.

Throughput is considered as one of the most confusing performance testing related term. People often struggle to understand this term and many of them end up ignoring it. In this article we are going to discuss about throughput in simplest language possible.

So, what is throughput? As per the documentation throughput is requests/unit of time where the calculation of time begins from the start of the first sample to the end of the last one. Basically, it is the amount of transactions happened over test duration. It is also used to determine the capacity of the application under test. The ability of the server in terms of how much load it can take. Purpose of doing performance testing is to achieve highest level of throughput.

When presenting a performance test result, it is often expressed as transaction per second(TPS).


Throughput in Real Life Scenario

Let’s take an example of a Burger Joint. As illustrated below, the burger joint has three counters. Hence, at a time it can serve only 3 customers. Let’s assume that exact time to serve a customer is 1 minute, no matter how big or small the order is.

Therefore, no matter how many customers are there, only three customers this joint can entertain at a time. Remaining customers have to wait, thus lining up a queue. Throughput of Burger joint becomes 3(customer)/min. This is the upper limit i.e. maximum the joint can achieve.

Same concept is the case when we are testing a web application. If a web application receives 100 requests at the same time, but it is able to serve maximum 50 in one go, the remaining 50 ends up being in the queue. Number of concurrent threads and ramp up time have a direct impact on the throughput calculation. During the ramping up phase of performance test run, throughput may have lower amount compared to the phase where execution is in steady stage.

To analyze it in more detail we have to understand what is Latency in performance testing.

JmeterWant

Latency

People always confuse themselves between Response Time and Latency. Suppose you are sending a request from the browser to a server. It takes certain amount of time to reach to the server. Application starts actual processing once the request reaches there. After the processing is over, response travels back to the browser.

In performance testing, the term latency of a request is the time request takes to travel from client to server and server to client. In other words, Delay. Hence,

Latency + Processing time(at application server level) = Response Time

The Response time, Latency and Throughput all are related with each other. Higher latency impacts on Response time and collectively they affects the Throughput value.

Apache Jmeter Windows

Throughput in Jmeter

Jmeter provides many ways to track the value of this useful parameter. Below are some Jmeter listeners you can use to analyze the Throughput value:

Apache Jmeter Download

Jmeter
  • Aggregate Graph
  • Graph Results

Apache JMeter - Basics, Common Errors, Issues, Best Practices ...

Jmeter also provides a very powerful Constant Throughput Timer to set the constant value of TPS to test the application load. You can also use Throughput Controller to distribute the User load within single Thread Group.

Apache Jmeter

Apache Jmeter Documentation

Throughput is one of the significant indicator when determining the performance capacity of of the application server. On a high level it gives a rough idea about the number of transactions that can be made per given time frame. One should not entirely depend on the its value but consider it as one of the important factor.

Apache Jmeter Plugin Manager