What is our primary use case?
We've been using Apache JMeter for load testing, spike testing, and endurance testing. We use the solution mostly for nonfunctional use cases, except for the security aspects, because those aspects require a different tool altogether.
What is most valuable?
What I like best about Apache JMeter is its user-friendly GUI because even if you don't have very good coding knowledge or understanding, or even if you don't come from a development background, you can still use the solution with just a few clicks. This is what's unique about Apache JMeter, in comparison with other tools in the market.
As Apache JMeter is open source, when there's a missing feature, you can search in several community blogs for plugins that you can use to modify Apache JMeter to meet your requirements, and this is another advantage.
What needs improvement?
What needs improvement in Apache JMeter is the very high load requirements when you want to scale it beyond certain thresholds. For example, small to mid-range testing is very easily done with Apache JMeter, but if you scale and increase the load, then it would be a problem because the tool consumes a lot of resources, probably because Apache JMeter provides an enriched UI experience, so it consumes a lot of memory and requires high CPU usage. This means you have to manage your infrastructure, or else you'll have high overhead expenses.
As Apache JMeter is a heavyweight tool, that is an area for improvement, though I'm unsure if Apache can do something about it because it could be a result of the way it's architected.
What I'd like to see from Apache JMeter in the future is for it to transition to the cloud, as a lot of cloud technologies emerge around the globe, and a lot of people prefer cloud-based solutions or cloud-native tools. Even if a company has a legacy system, it's still possible to transition to the cloud. I've worked with a company that was an on-premise company that moved to the cloud and became cloud-native. If Apache JMeter could transition to the cloud, similar to k6, then it could help lessen the intense resource consumption that's currently happening in Apache JMeter.
For how long have I used the solution?
I've been using Apache JMeter since 2020, so it's been two years since I started using it.
What do I think about the stability of the solution?
Apache JMeter is a stable product overall. A very large community in the software industry uses Apache JMeter, and though it's open source and there's a continuous phase of improvement going on with it, it has stable versions available for my company to continue testing it.
What do I think about the scalability of the solution?
Apache JMeter is scalable in the sense that there's a master/slave architecture available for it where I can scale as many slaves along the way, but when a huge number of users is required in a particular load test, and you have to scale a lot beyond a particular threshold, the resource consumption becomes too high and requires considerable overhead. Apache JMeter consumes a lot of memory, and that's a hurdle, but it's scalable up to a certain point. If a very, very large organization requires very heavy load testing to be done, it would be better for that organization to go with some other tool.
How are customer service and support?
Because Apache JMeter is an open-source tool, you get support from the community. The challenge with open-source tools is that if there isn't enough community, then the support and development you get would be limited, but as Apache JMeter is widely used, the community is vast and the support is sound. Unlike with Micro Focus LoadRunner, when you encounter an issue, you can report that to Micro Focus and the Micro Focus team will take care of your issue. It doesn't work that way with open-source solutions.
For the support I get from the community, on a scale of one to five, I'm rating it a three because there could be instances where you could not get a resolution for your issue. After all, Apache JMeter is a free product, so you can only rely on community support. Though the community for the tool is so big and Apache JMeter is widely used, and there'd be a lesser amount of circumstances where the solution for your issue isn't available yet, there could be between one percent to five percent chance of it happening, so that could be troublesome.
How was the initial setup?
The initial setup for Apache JMeter is pretty simple. There isn't much dependency, in general. For example, in macOS, you can just download the tar files entirely and just untar the files. There's no installation of specific extensions required. That's for macOS. For Windows, there would be .exe files. From that perspective, setting up Apache JMeter is quite easy. You can just run it locally, untarring it in any particular location. Just one setup that's required to be done is setting the Java home path to start the app. Otherwise, it's pretty straightforward and very quick to set up.
On a scale of one to five, I'm rating the initial setup a four because there's always some room for improvement.
What's my experience with pricing, setup cost, and licensing?
Apache JMeter is an open-source solution, so it's free to use.
Which other solutions did I evaluate?
I evaluated k6 and Locust.
What other advice do I have?
I'm using Apache JMeter for work. Locust is also used within the company, as well as k6, but I only touched base on those solutions.
The projects I'm working on currently use Apache JMeter, but my company works across regions and uses different tools, including Gatling and Locust.
Apache JMeter is used daily, for the range of projects I've been testing it on. A new government project came in, and I chose Apache JMeter for it because of its simplicity and user-friendly interface.
My rating for Apache JMeter is seven out of ten.
Which deployment model are you using for this solution?
On-premises
Disclosure: I am a real user, and this review is based on my own experience and opinions.