Many organizations are having trouble with the speed of their websites, which can affect their rankings in search engines. This article presents a list of what I consider to be the best free web performance testing tools available.
In this post I will be listing free web performance testing tools to enable you to perform load and performance testing of your website. In today’s world, as a developer it is your responsibility to ensure your application performs as expected, as well as ensuring that it meets the expected standards of the user.
Fiddler with BlackWidow and Watcher
This might seem like an odd combination to have on a performance tool list.
But performance engineering expert Todd DeCapua in a previous PerfGuild conference session recommended using Fiddler with Watcher and BlackWidow to create a quick-start automation testing performance solution.
Fiddler enables you to do many things, but it’s probably best described as a packet capture tool.
While Fiddler may not be considered a load testing solution it does many things that allow you to debug website issues, and with one of its many extensions, you can accomplish even more.
Some things you might want to use Fiddler for:
- Troubleshooting issues with your web application
- Security testing
- Performance evaluations
- Debugging web traffic from most computers and devices
- Many integration features
- Handy for finding performance bottlenecks
- Fiddler is already a pretty popular tool among developers. Many use it for debugging to view the HTTP requests their computer is sending to a service or website.
Watcher is a security add-in for Fiddler which will enable you to get some security results quickly. BlackWidow is a web crawler that gives you the functionality to point it towards a web address and then be able to drill down on results.
For someone who’s just getting started in performance engineering, these three tools working together can provide a great way to get that free look and feel as well as results that one might not otherwise be able to obtain quickly.
Todd actually has a session during a past PerfGuild Online Conference where he gives a demo of this approach.
nGrinder
nGrinder‘s GitHub page describes it as having been designed to be an enterprise-level performance engineering solution. It was developed to make stress testing easy and to provide a platform that allows you to create, execute, and monitor tests.
Features:
- You can write your tests using Jython or Groovy to create test scenarios and create stress against JVM using multiple agents.
- It can extend tests with customer libraries like jar and py
- Allows you to monitor the state of your performance agents load generation
- Take care of automatically collecting test results from distributed agents after tests
It currently has 1.3k stars on GitHub.
The Grinder
The Grinder is a Java-based framework. It provides you with easy-to-run and -create distributed testing solutions using many load generator machines to capture your end-users response times. So you don’t have to worry about any virtual users restrictions.
- You can perform load testing on any system that has a Java API
- A nice GUI console
- It automatically handles the management of client connections and cookies
Gatling
Gatling is a stress tool built on Scala, Akka, and Netty.
This modern architecture approach it uses allows you to test and measure your application’s end-to-end performance and easily scale up your virtual users.
- It has a simple yet powerful DSL.
- Easy to extend
- If you’re into Scala and the benefits it brings, this is the load testing tool for you.
- It has a scenario recorder
- Allows you to take a shift-left code approach to performance testing
It currently has 5.1k stars on GitHub.
LoadRunner:
Tool Overview: It is the most widely used tool to test applications, measure system behaviour and their performance under varying loads. The tool is used to simulate thousands of concurrent users and record the variations in system performance. Afterwards, leveraging those results, the performance of key components of the application can be analysed. This tool supports all advanced technologies like Ajax, Flex, HTML5.0, Java, SOAP, Citrix along with all other legacy technologies.
Tool Functionality:It supports testing of a wide range of applications along with continuous testing. The tool effectively identifies performance bottlenecks and displays the root cause analytics.
Apache JMeter:
Tool Overview: It is an important open source tool used to test the performance of both static and dynamic applications. It is a Java-based application used for load and performance testing, which is used to test Web applications, SOAP & REST web services, FTP, databases and more. Interestingly, JMeter is also widely used performance testing tool, which is effectively used to load test web and mobile applications and measure their performance.
Tool Functionality: Originally it was designed for testing web applications, but later on it has been expanded to test other test functions. It is also used for simulating a heavy load on a server or a group of servers and essentially checks application performance under varied load conditions.
WebLOAD:
Tool Overview: This is a widely used tool by enterprises for testing web and mobile applications. It is an effective tool as it combines performance, scalability, and integrity as a single process for testing applications. It is an alternate to LoadRunner.
Tool Functionality: This tool is used to create mobile load tests either by recording native mobile apps or browser-based apps, directly from the mobile handset. The ease of the tool is; the user can edit any scripts, add parameters and perform validation checks. After creating mobile scripts, it executes the mobile load tests and this tool integrates with a real mobile device.
RedLine13
This brilliant tool was explicitly launched for performing Apache JMeter-based load tests in the cloud. It is designed to scale testing to several sizes. It is compatible with various open-source platforms and plugins apart from JMeter. You can easily add this tool to your continuous integration/continuous delivery (CI/CD) pipeline with Jenkins & Selenium. It is one of the most popular load testing tools that can efficiently run tests with 500,000 users and indefinite scaling interactions.
Key Capabilities
- Can perform any amount of load testing
- Simulates an indefinite number of users
- Integrates reporting traits for easy breakdown of results
- Can run Gatling tests & Log File Replay tests
- Efficiently retains data
- Allows easy sharing of testing data between teams
Conclusion
Web performance testing has become more complex than ever before. To complete today’s performance tests, you’ll need more than just the basics. Launch, load, and run multiple tests on different versions of browsers with Selenium Grid, or find yourself some bandwidth with WebPagetest. With this compilation of the best free web performance tools of, even beginners can start building their own performance testing toolkit!