Skip to main content
TrustRadius
JMeter

JMeter

Overview

What is JMeter?

JMeter, from Apache, is a load and performance testing tool.

Read more
Recent Reviews

TrustRadius Insights

JMeter has become a go-to tool for organizations across various industries, offering a range of use cases. Users have found JMeter to be …
Continue reading

Flexible load testing

8 out of 10
July 28, 2021
Incentivized
We used JMeter for performance and load testing of our cloud service to verify that it worked well with many users before launch and also …
Continue reading

JMeter Review

6 out of 10
October 11, 2017
Incentivized
We used this product to do graphing and on the fly reporting. It allows us to pull data and graph it without laying it out carefully every …
Continue reading
Read all reviews

Popular Features

View all 5 features
  • End to end performance management (21)
    9.0
    90%
  • Real time monitoring (21)
    8.8
    88%
  • Integrated performance data (22)
    8.8
    88%
  • Deployment model flexibility (21)
    6.6
    66%
Return to navigation

Pricing

View all pricing
N/A
Unavailable

What is JMeter?

JMeter, from Apache, is a load and performance testing tool.

Entry-level set up fee?

  • No setup fee

Offerings

  • Free Trial
  • Free/Freemium Version
  • Premium Consulting/Integration Services

Would you like us to let the vendor know that you want pricing?

90 people also want pricing

Alternatives Pricing

What is Tricentis NeoLoad?

Tricentis NeoLoad is a solution for continuous performance testing software to automate API and application load testing. It was developed by the French company Neotys and acquired by Tricentis, along with the company, in March 2021.

Return to navigation

Product Demos

Apache JMeter - GUI Mode | How to open JMeter in GUI mode?

YouTube

Mobile Performance Testing using LoadRunner and JMeter (Demo Session 1) - By Isha Training Solutions

YouTube

How To Make 100000 Request Spring REST API | Apache JMeter Demo | Performance Testing | InterviewDOT

YouTube
Return to navigation

Features

Load Testing

Load testing is the simplest form of performance testing and is designed to test system behavior under expected loads

7.6
Avg 8.4
Return to navigation

Product Details

JMeter Integrations

JMeter Technical Details

Operating SystemsUnspecified
Mobile ApplicationNo

Frequently Asked Questions

JMeter, from Apache, is a load and performance testing tool.

Reviewers rate End to end performance management highest, with a score of 9.

The most common users of JMeter are from Mid-sized Companies (51-1,000 employees).
Return to navigation

Comparisons

View all alternatives
Return to navigation

Reviews and Ratings

(143)

Community Insights

TrustRadius Insights are summaries of user sentiment data from TrustRadius reviews and, when necessary, 3rd-party data sources. Have feedback on this content? Let us know!

JMeter has become a go-to tool for organizations across various industries, offering a range of use cases. Users have found JMeter to be versatile in addressing different testing needs, including unit testing, functional testing, performance testing, load testing, and stress testing. With its ability to identify memory leaks, database connection issues, and virtual server problems, JMeter has proven invaluable in troubleshooting and optimization efforts.

The tool has played a crucial role in performance and load testing, allowing users to thoroughly review test cases and use cases. By leveraging JMeter's capabilities, users have been able to pinpoint shortcomings in virtual server setups and uncover web service breakdowns. Many organizations rely on JMeter annually before holiday peaks to assess site and system performance, fix any issues that may arise, and detect regressions in performance.

JMeter's popularity as a load testing tool stems from its ease of use, cost-saving benefits as an open-source tool, and overall usefulness. Users take advantage of JMeter's capability to generate HTTP requests for simulating browser activity and making back-end REST API calls. It has also been instrumental in testing Java web applications and analyzing response time and throughput.

Moreover, JMeter helps estimate application sustainability under high load and determine resource requirements based on specific client needs. Users depend on JMeter to build load profiles, measure web application response times accurately, and monitor system performance effectively.

In the banking and finance sector specifically, JMeter finds extensive usage for performance testing to ensure rich transaction performance. It assists in identifying bottlenecks and simulating different user loads to test web applications under various patterns. Additionally, organizations also rely on JMeter to execute performance tests on web services and assure that any changes made do not adversely affect their overall performance.

As cloud-based applications gain prominence, JMeter is emerging as the standard tool for testing such applications within organizations. Its open-source nature, ease of use, and cost-effectiveness make it a preferred choice, replacing legacy tools like Silk Performer. JMeter is frequently employed to test the functionality and performance of web APIs, assess website performance, and conduct load and stress testing.

The versatility of JMeter extends beyond web applications; it is widely used to test the scalability, reliability, and responsiveness of both mobile and desktop applications. Users have successfully utilized JMeter to address response time issues and improve overall performance metrics for client products.

Overall, organizations are increasingly adopting JMeter due to its ease of use, cost-saving benefits as an open-source tool, and its ability to construct tests quickly. The tool has gained popularity in organizations across various domains, including banking, finance, e-commerce, and software development.

One of the key use cases for JMeter is load testing restful web services. Users rely on JMeter to diagnose issues like memory leaks and ensure that these services can handle high user loads and stress conditions. JMeter's capability to simulate different user loads allows organizations to test web applications under various scenarios and identify potential bottlenecks. In addition, JMeter is widely used for performance benchmarking of APIs to determine their ability to handle heavy loads and maintain optimal performance.

Another significant use case for JMeter is in the testing of cloud-based applications. With the growing trend of cloud computing, organizations need a reliable tool to assess the performance and scalability of their cloud-based applications. JMeter's ease of use, cost-effectiveness, and ability to simulate real-world scenarios make it an ideal choice for testing cloud applications.

JMeter also plays a crucial role in evaluating the functionality and performance of web APIs. Users leverage its capabilities to send HTTP requests, measure response times, analyze throughput, and identify any potential issues with API endpoints. This enables organizations to ensure that their APIs are performing optimally and meeting the needs of their users.

Moreover, JMeter is widely used for assessing website performance by measuring response times under different load conditions. This allows organizations to identify potential performance bottlenecks in their websites and optimize them for better user experience.

Overall, JMeter offers a wide range of use cases and has become a go-to tool for organizations looking to test the performance, scalability, and reliability of their web applications, APIs, and cloud-based systems. Its versatility, ease of use, and cost-saving benefits make it a popular choice among developers and testers alike.

User-Friendly Interface: Many users have praised JMeter for its user-friendly interface, stating that it makes load testing and stress testing efficient and easy. They appreciate the clear documentation provided by JMeter, which helps them test their applications' performance and resolve any issues before going into production. The friendly and easy-to-use UI of JMeter contributes to its popularity among testers.

Powerful Load Testing Functionality: Users consider JMeter a powerful tool for analyzing product performance through load testing. They find it very useful for performing performance tests in a detailed manner and consider it more complete than other tools like NeoLoad and LoadRunner. The ability to automate JMeter tests and integrate them with Jenkins is seen as a major advantage by users. The availability of various testing features, including functional and automation testing, is also appreciated.

Flexibility and Customization: Users highlight the flexibility of JMeter, allowing for customization according to their specific needs. They value the ability to replicate real-time scenarios, efficiently manage cookies, and utilize thread groups. Additionally, they highly appreciate the abundance of information available on the web about building custom flows with JMeter. The flexibility of JMeter along with the availability of numerous plugins are highlighted as valuable features by users.

Poor reporting feature: Some users have mentioned that they are not satisfied with the reporting feature in JMeter. They feel that it is lacking in terms of providing comprehensive test results and could be improved to offer more insightful data analysis.

Inefficient resource utilization: Several reviewers have stated that JMeter does not efficiently utilize system resources. This means that when simulating loads, JMeter requires a larger number of instances compared to other tools performing similar tasks. Users believe that optimizing resource usage would enhance performance and scalability.

Difficult script management: Users have expressed frustration with managing scripts in JMeter. The .jmx file format used for scripts is considered difficult to work with as it is not written as code, making it challenging to compare different versions or edit recorded test scenarios without re-recording them from scratch. Simplifying script management would greatly improve user experience and productivity.

Users commonly recommend JMeter for the following purposes: API Call Validation and Load Testing. JMeter has proven effective in testing critical applications and ensuring their performance before going live. It is highly compatible, adaptable, and open source, which allows users to easily integrate it into their existing infrastructure. JMeter is recommended for performance testing, including load testing, software testing, and test automation. It is particularly useful for load testing web applications with numerous users and conducting stress tests. Users advise against running CPU extensive applications with JMeter and emphasize the importance of taking the time to properly learn the tool in order to maximize its potential and effectively solve problems.

Attribute Ratings

Reviews

(1-25 of 27)
Companies can't remove reviews or game the system. Here's why
Score 8 out of 10
Vetted Review
Verified User
Incentivized
Apache JMeter helps ensure our performance targets are met for release, and quantifies changes we make in the name of performance. Without it, we end up with custom code written by system testers or QA that don't always fully understand how code evolves, and then inevitably we have to throw it away in a year. Apache JMeter allows developers to run standardized performance tests ahead of QA.
  • Easy to get started with
  • Good, straightforward UI
  • Deep options for fine tweaking under uncommon scenarios
  • Some options are arcane and misleading
  • Results are too easily skewed by poor methodology
For local, simple systems (think, "it has a main and it goes from there") it will do 10/10. Even for common frameworks, it can instrument/monitor/measure very accurately out of the box; we have even had some attempts at hitting it against a user interface, although then the developer must know more about some internals to understand what is being measured. Strong recommend for data processing code - that is, code that is repeatedly invoked.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
Apache JMeter helps our team in areas like load testing and performance benchmarking of APIs across products and services. Every new feature that gets released is the first load tested using Apahe JMeter, by passing appropriate parameters to check if it can handle the list and stress easily. This helps to assert that the service can easily serve 'x' users in 'y' conditions. With teams focusing more on microservices and agile development, non-functional testing plays a vital role. Apache JMeter is an open-source tool written in pure Java, making it the most preferable option for us to test our services, both API and UI through its user interface as well as Non-GUI mode. This makes the SDET team perform testing and feature releases more confidently with optimum quality.
  • Report generation.
  • Multithreading
  • Log debugging and sampling.
  • Optimize CPU and Memory utilization.
  • Reporting visuals and metrics.
Best suited:
Any new service i.e. monolith or microservice must be load tested to check how it can scale at extreme load, this helps to be prepared early and stay ahead of the competition too.
Not suited:
Limited CPU and Memory resources are available.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
Jmeter is used for the load or performance testing of an application. It is used to identify the bottleneck in the performance and improve the user experience. We have used for newly created authenticated API, Identify management system, and database to store PII. It is worth the tool to create your project and scripts to benchmark the performance numbers for future releases and improvements. We have found many bottlenecks in the application which required to re-design the data flow with the help of Jmeter.
  • Performance Testing.
  • Load Testing.
  • Penetration Testing.
  • Scale the test and rerun existing scripts.
  • Project Creation.
  • Variable declaration.
  • Global Design UI.
  • End User scenario to execute like live users performing the action on the application.
Performance testing of API, UI, Back-end, Middle layer of an application which transforms the data and consumer application uses it to Scale your tests to any size. Run Your Existing JMeter Tests At Any Limit From Any Location. Continuous Load Testing. Services: Scale your load testing. For any new API, it is better to benchmark the performance numbers for future improvements.
Mahmoud Shaaban | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
It is used to assess websites' performance to find performance issues and in load and stress testing to assess the break point of our systems, it has been used with my department only and by all employees in all projects to find those problems and make our systems more reliable.
  • Performance testing
  • Load testing
  • Stress testing
  • Interface
  • Installation
  • Ease of use
Suited in measuring performance level of reliability in any software or application and to preform queries that assess those aspects of performance and also to preform stress and load testing to make those products of projects or apps more reliable and more able to endure more users and still preform well.
Amr Saad | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
In my organization, JMeter is mainly used by the quality department to conduct all types of performance tests. The application is very powerful and has many features. The best part is the fact that it's for free. The Application helps us deliver software products that can withstand a huge load of users which results in better customer satisfaction. You can do stress testing, load testing on both Web UI Applications and API WevServices. Also, you can read the test data needed from external Excel CSV file which helps if you want diverse load tests.
  • Open Source and For Free
  • Supports all types of Performance Testing (Load Testing, Stress Testing, etc.)
  • Supports Web UI and API Services
  • Read Test Data from Excel File
  • User Interface and User Experience is very poor
  • No HTML Reports generated for the Performance Test Results
  • Almost impossible to edit recorded test scenarios and you need to Record the Test Scenario again
  • Need to have Programming skills because most probably you will need them in Complex Test Scenarios
JMeter is very well suited for conducting all kinds of performance testing on different kind of applications like Web User Interface and Web Services but it doesn't support desktop applications. Also, it is very easy to use it despite having a poor user interface. In conclusion, this is the go-to application if you want to conduct any kind of performance testing for free without any extra cost.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We used JMeter for performance and load testing of our cloud service to verify that it worked well with many users before launch and also to be able to calculate costs when scaling up the service for more users.
  • Easy load testing to verify system with load from many users
  • Very customizable through your own Java code
  • Possible to run from a console without any user interface
  • Make it easier to record traffic and use that as input during testing
It’s great for load testing when you want to apply a load but wants to be sure it’s not restricted by the client machine you run JMeter on. It can be a bit hard to use for people without Java skills.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
Apache Jmeter scripts are great for load testing. I like the parameterization strategy offered by JMeter because I can better reproduce real-life scenarios by introducing variables and randomizing my tests. Also, JMeter extensions are accessible in the open-source sector to extend current JMeter capabilities. I love this to do my performance testing.
  • User interface is not complex. Easy to understand and work flow is very simple.
  • It comes with many useful testing features.
  • It's very difficult to find any cons about this powerful tool. Actually it works perfectly for me.
  • While installation is very simple, some problems may occur if it is not installed by someone with experience.
Apache Jmeter is very useful for parameterizing tests and loading info, which means it has a great performance testing. JMeter will allow you to evaluate if you need to extend outside the existing hardware infrastructure. It can maximize the access to the CSV data by reading it correctly, as the I/O efficiency is overhead. It also offers a very simple user experience, many plug-in modules and a range of graphical maps and descriptive notes to the audience. You could even use the chrome BlazeMeter add-on to capture, retrieve, and create JMSX files in HTML Cookie Manager for an app-based check.
Binoy Shah | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
JMeter is being used by our QA teams mainly for performance testing. We are into banking and finance domain. Hence, the performance of the bank transactions should be very rich. JMeter helps us to find bottlenecks around performance issues within our web apps and web services. JMeter also helps us to simulate different user loads in order to test web application under various load patterns.
  • Jmeter is an open source and highly customized tool for your needs. There are open source JMeter plugins also available in the market to extend JMeter existing functionality.
  • JMeter provides a very easy user interface and pluggable components, and different visual charts and summary report listeners. Also nowadays JMeter supports quite rich HTML reporting.
  • JMeter can be used for volume testing, load testing, availability testing. Also, it allows the master and slave concept. Hence you can create multiple load generators and controllers, and JMeter will give you combined execution status.
  • JMeter provides great documentation.
  • To get a summarized HTML report, the user needs to configure a lot of things. It should be done with a single click like other paid tools in the market.
  • Support to measure desktop based application performance.
It is well suited for the organization who is looking for an open source solution for their performance testing needs. JMeter is the best tool for performance testing, I don't see any limitations here, and hence it's never less appropriate for any organization.
Rene Enriquez | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User
Incentivized
JMeter is being used to run load tests against the web applications that we are working on.
  • It allows excluding css and js files from request whenever you want
  • The installation is quite simple
  • No programming knowledge is required
  • I'd like to have the chance to modify the scripts but since they are really big XML file that task is almost impossible
  • A friendly UI would be appreciated
It's useful to test web applications and verify that they are working as expected. It's not the best option if you want to work on the scripts to modify them because the scripts are huge.
October 24, 2017

JMeter for load testing

Jaykumar Kalaria | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
Jmeter is used by the development team for testing the performance of web APIs.
  • It is very helpful while ensuring performance and stability of web applications
  • Good knowledge of programing provides great flexibility to do different things
  • You don't need to pay as Jmeter is an open source tool with support from web community
  • Recording of tests is very complex for a user with less programming skills.
Jmeter should be used for performance tests of web applications. Jmeter cannot be used for non-web applications. For functional testing and reporting, other tools like Selenium are of more help.
October 11, 2017

JMeter Review

Score 6 out of 10
Vetted Review
Verified User
Incentivized
We used this product to do graphing and on the fly reporting. It allows us to pull data and graph it without laying it out carefully every time and allows for quick information. We don't use it often but I have enjoyed being able to look at data in a graphic content.
  • Easy on the fly reporting
  • Graphics are easy to read
  • Can be adjusted easily
  • More user friendly for people not as familiar with coding
  • A GUI approach
  • More plain language for data
A situation where this would be well suited would be to view a large dataset and then slicing and dicing to see graphical representation of the data. It allows the user to process a lot of data and work through it without having an end goal in mind. It's a good way of on the fly info.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
  • Jmeter has a good user interface, and this is one of its best strengths.
  • It supports most of testing like functional, automation and load.
  • It supports any open source language like Java, Javascript, BeanShell, Groovy. Any developer can use it.
  • It integrates with Selenium, Eclipse, Jenkins, TeamCity.
  • As it is opensource, there could be small bugs, so if developers are throughly checked, it will be best
  • One should understand of proper language, then it will be easy to use JMeter.
  • it is not like commerical tool. so it wont have advantages of them
Jmeter is open source tool. It helps in a lot of automating manual test cases. We are using it for functional, automation and load testing of our websites. It supports all protocols like REST, FTP, SOAP, web services, Java, BeanShell and others. it is very user-friendly. Any one can understand it easily, and it has a good UI so any manual tester can use it.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
Jmeter is used within our department for REST API Functional and non-functional test automation. It is fast and reliable and quite extensible, that's why we are using it. A single testing module can be made and very highly paramterized such that it would be executed many times with various parameters combinations. It is also easily integrated with Jenkins as a CI framework.
  • REST API Functional and Non-Functional Automated Testing.
  • Stress and Load Automated Testing.
  • Highly Parameterized Test Modules.
  • Excellent Integration with CI Frameworks such as Jenkins.
  • Documentation is not user-friendly, you may need quite an extensive amount of time to resolve an issue.
  • Post processing of page responses is not easy to understand and needs long time to learn, although quite powerful.
  • Time invested to on-board the application and understand its power, and be able to learn it, can be long.
Jmeter is perfectly suited for REST API Automation, specifically Performance Testing, Stress and Load Testing.
December 09, 2016

JMeter Review

Score 8 out of 10
Vetted Review
Verified User
Incentivized
It is used for performance testing of mobile or desktop applications to check the scalability, reliability, and responsiveness of the product in the market. It is used by the performance center of excellence department inside the performance engineering team of the company. It addresses response time issues and performance metrics of applications faced by the client product.
  • Open source tool
  • Database load testing
  • Handles the correlation effectively using regular expressions
  • Naming convention of transaction scenarios in the jmeter dashboard could be improved.
  • Think time and pause time could be explained effectively.
  • Increase the RAM usage from tool itself rather than going into the bit files and changing it for accommodating a higher number of users and machines.
  • Limited access to help
  • Improve GUI of tool
JMeter is well suited for Java applications where the user can script the scenario once and make changes to accommodate for as many numbers of users for load test execution. The image and selection of any files or exporting files scenario is handled well.

It is less appropriate to test Ajax applications where it is required to script click per use.
May 11, 2016

Jmeter review

Score 6 out of 10
Vetted Review
Verified User
Incentivized
We use JMeter to test our platform application. It is used by the whole organization.
  • You can do customization for the script. I have to write a Java code for integration with two factor authentication. It is pretty straight forward with putting in customized Java code and libs.
  • It is more useful for power users instead regular users. Plugin can be easily added.
  • It is free and community supported.
  • Reporting and analytics
JMeter is more useful for power user or relatively apps for limited changes.
Score 9 out of 10
Vetted Review
Verified User
JMeter is used in our department as a performance testing tool. We use it to simulate multiple user systems and evaluate our product's performance.
  • Multiple thread group can simulate multiple user system
  • Setup thread, tear down thread, so we can create a scenario first, do the operation and tear down at the end
  • CSV file is very useful
  • I noticed that sometimes after you record staff in JMeter, the order is sometimes wrong.
How do you make recording steps efficient in JMeter?
Score 10 out of 10
Vetted Review
Verified User
Incentivized
We use JMeter in our company to test load and performance of our web sites. Our scripts leverage the flexibility and ease of use of JMeter to test the different pages of our websites and generate dynamic content requests. We hired the services of BlazeMeter to leverage their infrastructure to run the test in different regions and different concurrent user configurations to our different regional pages.
  • Easy to use and parameterize.
  • Can be executed from command line, so it can be easily plugged in with continuous integration tools like Jenkins.
  • The script is contained in an xml file, so it's portable.
  • It's free.
  • UI is not very robust.
  • Poor graphics and reports.
  • Not very intuitive grouping of the tools, steps and plugins. Some are difficult to find, especially the first time you use it.
JMeter requires knowledge of web pages, urls, scripting, and medium level to experienced QA people. It works great for read only websites, that is, websites that don't require forms be be filled in or secure logins. Working with forms and security can be done, but it's not that straight forward. I wouldn't recommend this tool for junior or unexperienced people, or for someone that will need a step by step guide or wizard.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We use JMeter for load and stress test for most of our client's products. We target for:

  • Page load
  • Duration of test in seconds with number of virtual users that server can support in x number of seconds (users/sec)
  • Determine a system's behavior under both normal and anticipated peak load conditions
  • Min/Max duration for each page to load
  • Reverse stress test and its consequences
  • Duration of test in seconds with number of virtual user that server can support in x number of seconds (users/sec)
  • Determine a system's behavior under both normal and anticipated peak load conditions
  • Min/Max duration for each page to load
  • Better UI
  • Multiple project window
  • Saving and importing script on another machine looses some settings
Things to consider:

  • Number of supported users
  • Peak traffic time
  • Page size and total number of pages
  • Images on page and its size
Score 7 out of 10
Vetted Review
Verified User
Incentivized
JMeter is being used as secondary tool at our organization, in my team its primary tool though. At the organization level we use NeoLoad which is more user friendly compared to JMeter. JMeter helped us to test our services in a cost efficient manner. We deal with millions of SOAP messages and JMeter helps us to distribute and measure performance of all those services.
  • Interaction with Java and JUnit is the one of best features and strengths of JMeter.
  • Bean shell is another strength where you can write a customized version of your scripts.
  • Webservice Performance is pretty easy compared to other tools.
  • UI Recording gives a easy way of building scripts.
  • JMeter needs to improve the interface and the start and stop process; several times it just hangs when you see an issue and stops testing in between. There is no impact but user has to reopen JMeter as the earlier session still hold resources.
  • More powerful reporting and listeners, compare previous test and current test results. Loadosophia is best example of it, including BlazeMeter which are paid versions.
I would always prefer JMeter for webservice automation over others; it does have some issues with UI based performance testing but those can be managed using JUnit and Java. Using JUnit and Java makes it some what tricky for new users to understand and that's why they go towards a more user friendly tool. JMeter support is another issue, you have to completely depend on the community to get help.
David Luu | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
We currently use JMeter at one of our divisions in the organization to assess site/system performance, fixing any issues that arise and looking for regressions in performance. We do this on a yearly basis before our holiday peak comes. Although strategically, our test framework/tools team is standardizing the entire company to use another open source tool going forward called Gatling. But we have yet to complete full migration to it, so in the meantime we still use JMeter.

JMeter was selected initially when we started formalizing load testing at my division and was evaluated along with another tool called WebLoad. We picked JMeter for its ease of use, usefulness, and being open source which saved us licensing costs. We primarily use JMeter to generate HTTP requests against our websites, either simulating browser activity or making back end REST API calls.
  • Easy of use - in generate load like HTTP requests, and processing/analyzing the responses. No coding is necessary at the basic level, just need to understand load testing and the infrastructure being tested.
  • Automatic management of things like cookies to help with session state support - so you don't specifically have to worry about it or handle it
  • Lots of testing/configuration options to suit your needs in making the right load generation (sampling requests), and analyzing the results, including any pre and post processing of the results first. Things like the Beanshell/BSF pre/post processors, response assertion, regular expression extractor, XPath extractor, CSV data set config
  • There is a JMeter cloud service called BlazeMeter that I think would be useful for those that need to scale up high load without provisioning their own systems. I've not personally tried it though, but I recently attended a meetup presentation that highlighted nice useful features that BlazeMeter provides. One should evaluate the service if they are considering JMeter and need to expand beyond existing hardware resources.
  • Programmatic customization - for more lower level detailed programming fine tune control of load test actions and processing of results, one has to write a JMeter plugin and load that plugin with JMeter to use it. Or encapsulate the logic into something like a Java class and access that through Beanshell, etc. in the pre/post processor or sampler, etc. It provides somewhat less control of everything than some other tools like Gatling. Or at least it requires more effort and a greater level of understanding of the workings of JMeter internals than a normal user has.
  • Test plan reuse - by design JMeter doesn't work very well when you have frequent components that you reuse across tests or having different modular tests chained together to form a bigger load tests. It gets harder to do so as you scale up with more tests or more levels of testing. Though someone once pointed out to me you can deal with this to some extent using test fragments and encapsulate the reusable component configurations in a test fragment that you can import to other tests. The fragments would be like the test templates. I've personally not gotten around to trying that out though. The other approach is to abstract the common usage functionality/code into Java class (for use with Beanshell, etc.) or JMeter plugin and reuse that. And the lazy way most beginners would deal with reuse is copy & paste from one area to another or one file to another.
  • JMeter might not generate load as well as other test tools not being able to scale up the load as high. I personally have not observed this yet comparing different load tools. But our test frameworks/tools division has found that Gatling scales higher and better than JMeter for high concurrency load against the system. So just wanted to point that out.
The key questions I would pose are: how high of a concurrent load do you need to generate against the system? How technically skilled are your personnel that will perform the load testing? How much programmable/scripting/code based control do you desire from the tool? Do you prefer more of a GUI based tool or a programmatic code/scripting based tool? JMeter will be for those that want a GUI, moderate to low scripting/code based control/programmability, moderate to low load generation, and for users experienced in the novice to expert range.
Artavazd Yeritsyan | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
We used JMeter as a tool for performance testing of our web application for both frontend/backend. We have configured jobs on Jenkins to execute jmeter tests on parallel. For ex. we have tried out registration performance both on Stage and Live environments in parallel with the same parameters to compare the results.
  • Apache JMeter is a great tool for doing performance testing of web-applications.
  • Apache JMeter also can be used for functional tests because it has a set of assertions and extractors (i.e. elements) which allow you to not only get the page from the server, but also to control its content. In this mode, JMeter saves much more information about each request (full response and request body).
  • To make browser emulation more realistic, JMeter has elements which can work with cookies and cache. These elements are HTTP Cookie Manager and HTTP Cache Manager.
  • JMeter uses a synchronous request approach. That means for every request JMeter generates, an internal thread is raised and therefore blocked until a response is being received or a timeout happens. This results in resource blocking on the load injector. The maximum number of threads is limited within a JVM - dependent on the underlying infrastructure - and even if you are able to run a lot of parallel threads this will result in a higher CPU and memory utilization. Although performance tweaking and scaling out to distributed testing might help in such a case, it makes testing more complex and error-prone.
  • This behavior can result in distorted metrics. Think about a typical breakpoint load test. You want to determine, which is the maximum number of requests per second your tested system can serve. This will be limited by JMeter to max_requests_per_second = (1000 / average_request_time_in milliseconds) * max_jmeter_threads.
  • Even if the system could serve more, this is the maximum number JMeter can inject. This is especially important when the tested application has long response cycles, e.g. because of long lasting transactions or long lasting calculations within the requests.
If you want calculate request and response time JMeter will be very valuable for you, but if you want to do Stress Testing with thousands of simulated users, it will be not very valuable.
Ameeta Muralidharan | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User
Jmeter was used by my organization to test Java web applications. We used to prepare scripts based on the use case scenario which was performed frequently. We used to then perform load, soak tests using these scripts to analyse response time, throughput of the web application. We also used to monitor system performance like CPU, memory performance during these tests.
It is used by my department. It handles the business problems of estimating how much the application would sustain under high load, resources required for a particular client requirement.
  • Jmeter scripts are good to be used for load and soak tests. This helps in analysing response times and throughput. For example for a particular application it would give response time for each transaction you perform like login, submitting information etc.
  • Jmeter has elements like listeners which helps us visualize results and helps us compare them. This helps in analyzing the results faster. For example to compare response times of different transactions
  • Jmeter is flexible and can be used to test any applications apart from Java. For example I tried to prepare scripts for SOAP and web service.
  • Jmeter requires many tweaks with respect to its configuration file and thread properties. users need to edit theses files themselves. There could be some interface where we can edit this fields.
  • Jmeter cannot handle more threads and hangs up when we increase the number of threads. This causes lot of inconvenience. In these situations, user can be notified that such change would be lead to slow performance so that user can do as required. The same appears when we try to view huge files on graph listener.
  • Jmeter should optimize the read and write access to output csv since it acts as overhead to the I/O performance. This affects our test results for the application which we are testing.
It is well suited for beginners. Users need to do the parametrization and correlation all by themselves to prepare scripts. So they can understand how do performance testing tools work. It works well for testing web applications or to identify any bottleneck or root cause of a failure. For example I faced a concurrency issue where when two reports were generated at the same time. It would generate two 0kb pdf files with no content. Jmeter helped me in resolving this issue. It is not well suited for functional testing since other tools like selenium or imacro would be better since they require less of parameterization and correlation.
Charlie Harris | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Our organization utilizes the JMeter product across many areas of the IT footprint. Our application development teams will use it for unit testing and our quality assurance team uses it for functional, performance, load and stress testing. We have identified many memory leak, database connection and virtual server issues with the versatility provided by the JMeter product. Our company is expanding their horizons with SOA and other web service upgrades that were until recently an unknown environment for our testing teams. I have spent countless hours in test case and use case review with our QA teams and having Jmeter as a viable testing option has been crucial in our performance and load testing endeavors. We have identified shortcomings in our initial virtual server setup and web service breakdown through comprehensive testing and use case review.
  • JMeter has the best range of 'config element' options available to the user. Versatility is the key for me when building a solid base of data options that will be available for all facets of the desired test case selection.
  • JMeter provides the user with a variety of reports, results and graphs that can provide the customer with a solid picture of the overall success of the test plan and how to build out the future scenarios. The key is having all levels of output options (executive to technical) and the ability to have comprehensive reviews for all IT teams.
  • JMeter has a very robust multithreading framework that allows my team to emulate dozens of user options and threads from within the same test sampling. Building a broad-based test sample is crucial to the success of our testing efforts as we step towards the SOA environment and away from the archaic way of thinking about QA testing. Too many other load testing tools are limited in their scenario building options and ability to simulate so many different types of users.
  • I would like to see the WebService (SOAP) functionality returned to JMeter. I don't mind the HTTP option update for this, but I still use previous versions with this option available.
  • I would like to see someone build a better, well-rounded documentation effort. I understand this is open source, but there are millions of users out there and at least one of them has some Technical Writing background.
I would like to know what are the overall goals of the projects under review and the opportunity to emulate various user types and scenarios. A simple load test is extremely easy to build with this product and then can be adapted to any test case options needed as the project moves forward in the software development lifecycle.
Jimmy Armitage | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
JMeter is becoming the standard across Intuit. There is still a legacy investment in Silk Performer but it is being phased out in favor of JMeter. One large organization does have its own tool but most have adopted the open source JMeter. Another tool that is seeing adoption is Gatling. JMeter is open source and free. That addresses the issue that Silk Performer is an expensive problem. JMeter does not require licenses. That addresses the issue that Silk Performer machines are a limited problem. JMeter experience is easier to find and is more relevant in today's market.
  • JMeter is easy to use. Explaining how to get a simple script going is not difficult.
  • JMeter is open source and free.
  • JMeter really is the industry standard now.
  • JMeter does not make good use of system resources. In the AWS cloud I often use 100 m1.large JMeter instances to simulate equivalent loads as 20 m1.medium Gatling instances.
  • The JMeter .jmx file is hard to diff. JMeter scripts are not written as code, the user uses a GUI to create a gigantic xml file.
  • When you have to drop into Beanshell things are not fun.
If you can not code, use JMeter, it is the best.
If you can code, try Gatling, it is the future.
Score 9 out of 10
Vetted Review
Verified User
We use JMeter mainly to load test the new hardware, soak testing memory leaks and rarely it's being used to automate certain testing processes. Jmeter is being used mainly in our QA department and very rarely by development team. Jmeter is an awesome tool, but does take a while to set up test cases and even longer to train someone to use it.
  • No overhead, it is the key to successful stress and destruction testing.
  • Scalability, you can connect JMeter with multiple machines
  • Flexibility, you can use UI to create your test or code it from scratch
  • Has great server monitoring tools
  • Huge community behind it
  • Lots of plugins and extensions
  • It's FREE!
  • Better User Interface
  • Needs a little more documentation and references
  • Improve overall look to the modern like interface
There are few really good tools out there, but they get very pricey. JMeter is a fast, reliable, free and top of the line tool to use. All it takes is time to learn it and start developing more technical tests. JMeter can be applied to any web software out there, from the simple 3 page website to a high-grade industry web application.

Do I have time to learn the new software?
Would you like to know the maximum load for your server?
Can you code or have someone around that may help you with programming?

If you answer all 3 questions with yes, JMeter is the software for you
Return to navigation