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)

Setup with JMeter

Let's see how JMeter implements it.

The main element is HTTP Request:

Figure 7.4: HTTP Request

We can easily find all that we previously saw.

Similarly, all HTTP methods are accessible:

Figure 7.5: HTTP Request – HTTP methods

JMeter can use multiple implementations (Java or HTTPClient4) to handle HTTP requests.

It is recommended to use HTTPClient4 (the default implementation) for performance, functionality, and compatibility reasons:

Figure 7.6: HTTP Request – HTTP implementations

Here are some features of HTTPClient4 that are not available with a Java implementation:

  • Better control of how connections are reused within Keep-Alive
  • Virtual Host or IP spoofing
  • Client certificate-based authentication
  • Kerberos authentication
  • Wider support for HTTP methods
  • The ability to use the DNS Cache Manager element to have better control of DNS configuration
  • Fine control of the retry mechanism

If we need...