Book Image

Master Apache JMeter - From Load Testing to DevOps

By : Antonio Gomes Rodrigues, Bruno Demion (Milamber), Philippe Mouawad
Book Image

Master Apache JMeter - From Load Testing to DevOps

By: Antonio Gomes Rodrigues, Bruno Demion (Milamber), Philippe Mouawad

Overview of this book

Load tests help identify the maximum number of requests a software system can handle. One popular open source tool for load testing is JMeter. By leveraging the features and capabilities of JMeter, you can perform extensive load testing and fix issues in your application before they become problematic. This book is written by JMeter developers and begins by discussing the whole process, including recording a script, setting it up, and launching it, enabling you to almost immediately start load testing. You'll learn the best practices that you must follow while designing test cases. You'll also explore the different protocols offered by JMeter through various real-world examples. Finally, you'll see how to integrate JMeter into the DevOps approach and create professional reports. You'll discover ways to use the eco-system of JMeter to integrate new protocols, enrich its monitoring, and leverage its power through the use of the cloud. By the end of this book, you'll know all that's needed to perform comprehensive load testing on your applications by using all the best practices and features of JMeter.
Table of Contents (14 chapters)


It's important to understand that a load test is only a simulation. This implies that despite all the possible and imaginable tests, you don't have a 100% guarantee that everything will proceed smoothly in production. There will always be an unplanned case (failure of a part of the system, unanticipated customer action, and so on).

To increase the chances of success, it's important to also work on the architecture (design for failure and so on) and the deployment process (canary release and so on).

Despite this, a load test is important to:

  • Put into production the healthiest application
  • Fine-tune as much as possible the architecture and application
  • Reproduce a performance or multithreading issue detected in production to fix it
  • Give business an idea of future response times when a new application goes live
  • Anticipate Sales period
  • Understand the weak points of the application
  • Validate/improve monitoring (metrics, tools, dashboards, and so on...