Skip to content

JMeter

The Complete Guide of JMeter Controllers

In this blog post we are going to look at several JMeter Controllers, specifically:

This is not an exhaustive list of controllers that JMeter offers but these once will give you a clear insight into how controllers are integral in defining load testing scenarios and how without them you will struggle to build complex and indicative load tests.

Technically JMeter has two types of controllers and these are categorised as Samplers and Logical Controllers, the controllers we are looking at in this post are the Logical Controllers that allows you to customise how JMeter delivers requests to meet your load profiles.

Let’s look at the logical controllers with some examples of how they can be used, our tests will consist of Dummy Samplers as this is the simplest way to demonstrate how the various Controllers work. You can follow along each example by downloading the JMX here.

A complete look at JMeter's FTP and SSH SFTP samplers

While the File Transfer Protocol is one of the original protocols used in the early adoption of the internet it remains a fundamental part of modern computer networks.

In this post we will look at the way the JMeter can support you in performance testing FTP and SFTP.

SFTP is a more recent development to provide a layer of security over the original protocol to make it more suitable for the modern internet and is different to FPT in many ways.

Whilst SFTP is considered more appropriate for modern systems there are still many applications that rely on, and implement, FTP and therefore we will look at how we can test both.

If you want to follow along, a JMX file containing all the steps detailed below can be downloaded here.

Looking at the uses of JMeter Timers

Timers in JMeter are incredibly important when it comes to the balance and pace of your performance tests, we are going to look at the Timers that ship with the standard JMeter installation in this Blog post but there are others that are available as a Plugin and hopefully this post will encourage you to investigate these further.

The timers that we will discuss are:

Kafka Load Testing with JMeter

This post is about Kafka and the process I have been through recently writing a performance test for an application that subscribes to messages from this technology.

The test I ended up with was in the end very straightforward but there were several hurdles that took a while to resolve. I hope that reading this post will hopefully help you avoid them.

The performance testing concepts we will discuss are focused on how to publish messages onto a Kafka topic and will not discuss how to write a test to consume messages from Kafka. We wanted to focus first on some of the concepts of adding messages and we will look at the consumption in a later post.

If you are performance testing an application that subscribes to a Kafka topic then the consumption of messages will be performed by the application you are testing, and therefore you will not need a consumer test.

You will mostly be performance testing an application that consumes from Kafka and would probably only want a consumer if you were testing your implementation of Kafka.

Before we start let’s take a high level look at what Kafka is and how it works.

Apache JMeter is old

"JMeter is old technology", I hear this a lot.

"Let’s use this tool or that tool instead of JMeter as it’s the latest", I hear this a lot.

"We need a lightweight tool without the GUI interface to write our tests as that will make us more agile", I hear this a lot.

It’s all nonsense it really is, there seems to always be a call for using the most modern technology for all forms of testing whether its Performance Testing or Automated Functional Testing and the result of this is that the people writing the tests spend to long learning the new tools and not enough time building something that will ensure the software being developed is the best it can be.

I am conscious that the above statement is a bit or a generalisation and there are some exceptions but for many organisations this is true.

The aim of all these tools is the same thing, to support your QA journey through to the delivery of a robust, well performing piece of software, the tools you use to accomplish this are not important if you have a robust modular framework in place, and you have a sensible approach to data management and reporting.

We are going to look at in this post the reason why JMeter is so good at what it does and why just because it is considered old technology by some still makes it the right choice for many testing professionals.