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.7
    87%
  • Deployment model flexibility (21)
    6.7
    67%
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 Enterprises (1,001+ 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

(26-39 of 39)
Companies can't remove reviews or game the system. Here's why
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We use JMeter for performance testing of web applications. Presently it is being used by the performance testing team. It is mostly used for analysis of page load response time.
  • Very quick development of testing scripts.
  • Relatively ease of analysis.
  • It would be good if we could have customized integration with HP Quality Center.
Nothing specific, but JMeter is very handy to quickly use for performance testing of applications that are being developed in agile development.
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
Raman Ramanchuk | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User
Hi, I use Jmeter in current company (Strevus) and used it in Oxagile to build load profile for sowtware applications and products that I was testing. Also I measured web applications response times when performing load and stress testing. Also I measure DB response times (MySQL) when loading DB with queries (selects, udpates etc.). We used Jmeter mostly in our Engineering (DEV and QA) departments
  • Easy way to create and configure http(s) requests being emulated by Jmeter. A lot of configurations of http requests
  • Easy way to configure and run DB load tests using connector-j library for MySQL
  • Jmeter Scripts debugging mode and real time debugging when scrips are being executed help to catch a lot of application issues and helps to fix issues in load scripts
  • Reporting tools and reports configuration. I would like to have configurable reports by metrics that Jmeter has
  • Integration with servers statistics gathering. AFAIK Jmeter can gather load logs only from TomCat server but I would like to have more advanced integration and gathering logs from other wide spread web servers (e.g. IIS etc)
  • Complex language (Java) to write your own assertions or advanced scripts that emulate non-predefined actions
Jmeter is free tool, so it's preferable in case if there is no budget for performance testing. Jmeter is most suitable to build simple load profile and quickly analyze web app or DB performance. It's cross-platform and can be configured to have cluster and create required load. Jmeter is less appropriate if you need to perform custom actions that are not listed among Jmeter handlers (it's required to write Java code and requires development skills). It would be great if Jmeter can support multiple scripting languages like TestComplete (automation tool)
Score 9 out of 10
Vetted Review
Verified User
We use JMeter to load test restful web services. It was a little tough to get the initial setup done, but once you are past that hump, it becomes much easier to use. We were able to use JMeter to diagnose a memory leak and prove to management that we had resolved the issue, and not just making a wild shoot in the dark. Now that we have all of our basic uploads setup and configured, it only take 10-15 minutes to set up for a new test. We haven't had as good of luck with using this to load test HTML webpages, but we are still working through those issues. Overall, we are pleased with JMeter.
  • Restful web service load tests - some what complex to setup, but easy to use once it is.
  • More real world examples to help with learning the product
  • Easier setup to load test HTML pages
  • Not particularly suited for Functional testing
For a free product, it performs wonderfully with load testing, with a relatively lightweight application and easy re-use makes for a winning combo. I would definitely recommend this to anyone looking for a load test application.
Wes Sucher | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Jmeter is being used primarily to test functionality of web services for our project.
  • Load Testing - it is easy to conceptualize the type of requests being made
  • Plug-in support - if Jmeter doesn't come with something you need you are likely to find it on the internet. You could even develop a plugin yourself.
  • Simplicity - the interface is pretty barebones and straightforward, you will not be overwhelmed by options
  • It would be nice to more easily integrated into a CI system (like Jenkins/Hudson). There are workarounds out there but they are not very straightforward to implement.
  • Memory usage of the tool can get high when using the "graphical" listeners in real time.
It is very well-suited when looking for a free, open-source tool. No setup is really required here either, so you can hit the ground running. The community support is okay, but since the tool is not that popular you will not find much information on it online (however, the official documentation is written pretty well). If you are looking to test XML/JSON-type web-services in both functional and performance ways it is a good tool.
Score 9 out of 10
Vetted Review
Verified User
Jmeter is used by our group in Intuit to do performance tests and analysis for all the different services that are part of the division. It is slowly and surely becoming a common tool for all the groups in Intuit primarily due to the ease of use and the no cost attached to it. Jmeter helps us to construct tests in minutes and the scripts can be run from any platform which has Java installed on it. Jmeter test plans (scripts) can be shared with the product development team to run on their local or dev environment to get performance insight at an early stage in the lifecycle of the product. Jmeter tests can also be run from a command line which makes it easy to make it part of Jenkins job for CI/CD framework.
  • Easy to construct Webservices script - You just need to add a sampler with the endpoint, payload and header information. And boom you can run a load test on the service with varying load and capture the response time and throughput. In a commercial tool like Loadrunner or Silkperformer, this process would take at least couple of hours, while with Jmeter we can do this in 10 minutes or less.
  • Modularizing the scripts - Jmeter has a very good way of organizing the scripts and the reusability of the existing script (transactions) is also as easy as copy pasting the script.
  • Jmeter tests can be run from anywhere, so you can run it from the idle webserver itself if you have some firewall restrictions to test it from your local or other environment.
  • Jmeter distributed tests can be spawn from the AWS and results collated to see the performance from different regions in the world.
  • The most not so good thing about Jmeter comes with the distributed testing. When you setup a distributed testing say with two machines, the load being generated from each machine has to be the same. So we can not separate the test plan and say run these x scripts on machine 1 and y scripts on machine 2. Both machines will run the same load with all the scripts. There is a standard feature available in all the commercial tools to specify which scripts and how many Vusers to be run from which machine in a distributed testing.
  • Reporting and graph visualization aren't that great. The option of adding external plugins for reporting does enhance it to some extent but not anywhere what we can get from Industry standard tools
  • Jmeter for UI based scripting doesn't work easily as the websites offload more work into their Javascript in the UI. Jmeter does not execute the Javascript and we may not be able to measure the real user experience.
1. Are you going to use Jmeter to primarily test for webservices? Then Jmeter is an obvious choice
2. Do you plan to test with 100s of 1000s Vusers, but have no budget to buy commercial tools?
3. Do you plan to test a wide variety of protocols like HTTP, FTP, JMS, LDAP, etc ?
May 13, 2014

JMeter is awesome

Score 10 out of 10
Vetted Review
Verified User
I used Jmeter directly to load test a web UI in a previous role and my current employer uses it in their QA department. The main thing I love about it is that it does such a unique job of operating in a way that enables people with a diverse range of skill sets to get what they need out of it. If you just want to run a test that someone else created and analyze the stats, you just need to drop a file and you're good to go. At the other end of the spectrum, if you're building a test and want to get very specific about the test's behavior, you have a massive array of tools at your disposal. I recommend it strongly to anyone doing GUI testing.
  • Modular test construction
  • Detailed statistical reporting
  • Exportable test design
  • The level of detail it provides can be overwhelming at times for newbies. It would benefit from some improvements that made it easier to quickstart
It's designed to do HTTP load testing, if someone wanted to do load testing over a different protocol, then obviously you don't want it. If the user is intending to integrate results data with another system, they may face problems exporting jmeter stats into the proper format - as I recall it only exports to .csv by default.
Return to navigation