Can you please suggest some good free tools for load and performance testing of Java-based Web applications? JMeter...
can't be used because this application uses pop-up windows.
JMeter may actually be a good solution for you, in spite of the pop-ups. JMeter is not actually aware of what is happening -- in essence, it replays a "script" of URL requests. This can be programmed into JMeter using the recorder, or you can also generate Apache-format access logs from your Web server and replay those Apache logs. So you could stage the scenarios you wish to performance test by manually walking through them, and then importing the Apache access logs associated with your test scenario.
Alternatively (and in some tests, preferably) you can replay actual customer access logs. Using JMeter, you can replace the URL requested with a target URL and maintain the rest of the request (or do the replacement in your text editor of choice).
Other available open source load generation tools include Grinder, httperf, OpenSTA and Microsoft's Web Application Stress Tool. Research your tool first, but most load generation tools simply replay http requests, and therefore no tool is better (or worse) for testing J2EE-based Web applications versus .NET or PHP Web applications.
There are commercial alternatives, as well. Some commercial load generation tools are rather expensive, such as LoadRunner. These tools may or may not provide you with the functionality needed to justify their added expense. My experience with commercial tools has led me to standardize on WAPT (Web Application Performance Test tool). This is a relatively inexpensive tool with provides a very robust user experience. It is focused on the client side of performance testing, so it doesn't include any monitoring of the server.
However, it offers great real-time insight into what's going on from a client perspective. The biggest drawback to WAPT is that it does not replay Apache access logs.
Tools all have trade-offs and there is no one "right" tool for every team, project or test. As an engineer, you should take your time to review several tools and pick the one that meets the highest number of your most important requirements.
Dig Deeper on Stress, Load and Software Performance Testing
Related Q&A from John Overbaugh
Learn what's behind AWS outages and how to fix failures before they happen. Continue Reading
Learn strategies for best security test strategies for SaaS cloud. Continue Reading
Expert John Overbaugh identifies the three top concerns of the test manager and offers advice on how to stay ahead of the curve when it comes to ... Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.