From the Open Source Load Testing presentation http://www.slideshare.net/richardfriedman/open-source-load-testing
Everything else was build up to the review of this slide. What is available in open source load testing tools? There are so many ways to slice and dice all the great open source projects and this slide is not a deep review or demo of each project. I looked at the dimensions of the projects in terms of content covered in this presentation.
- Distributed. Does it support scaling load tests to distributed agents and then collecting results.
- Recorder. Is a recorder provided to simplify building an initial test plan.
- Charts. Are pretty graphs provided once the data comes back.
- Plugins. This is a personal requirement, can I plug in new protocols or UI elements and easily extend the project.
- Jenkins. Has the community provided a way to integrate with continuous delivery tools. Jenkins support is a tell tale sign.
Underlying the list I found a few broader categories
- Plan. Provides a mechanism to build a test plan. The top of the list are what you might call full load testing tools providing the ability to create a test plan.
- You. Admit it, at some point you wrote your own script for load testing. Perhaps you open sourced it, perhaps you just run it for yourself.
- Simple. These tools are very valuable but they typically are used for testing or hammering a single endpoint.
What impressed me the most about this compilation of load testing tools is the longevity of so many. There have been 8 or 12 that have been around greater than 10 years. Of the six projects which had releases in 2015, five of them are older than 10 years. This kind of active community is an impressive feat.
Here are references to each of the projects which provide the ability to create load test plans.
- Tsung : Tsung is an open-source multi-protocol distributed load testing tool
- Galting : Gatling is an open-source load testing framework based on Scala, Akka and Netty
- Yandex.Tank : Yandex.Tank is an extendable open source load testing tool for advanced linux users which is especially good as a part of automated load testing suit.
- Apache JMeter : The Apache JMeter™ application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance.
- CLIF : CLIF is a Load Injection Framework
- Locust : Define user behaviour with Python code, and swarm your system with millions of simultaneous users.
- Iago : A load generator, built for engineers.
- The Grinder : The Grinder is a JavaTM load testing framework that makes it easy to run a distributed test using many load injector machines.