What it does
Locust is an open-source load-testing framework where a test author writes simulated user behavior as Python code. A locustfile can issue HTTP requests, repeat tasks, and define wait behavior; Locust then drives users through a web interface or headless command-line run and reports throughput, response times, and failures. A master process can coordinate workers across processes or machines for larger tests.
Locust keeps the workload definition in code rather than a visual test plan. A first test can define an HttpUser with tasks for the routes a typical user visits, save it as locustfile.py, and point the run at the service under test. The quickstart documents both an interactive web interface and headless command-line parameters for user count and spawn rate; the interface reports requests per second, response times, failures, and active users.
The Python model is useful when a scenario needs branching, repeated sequences, or shared setup that is awkward to express in a fixed recorder. For example, define one task for browsing and another for submitting a form, then set their relative weights to approximate the intended traffic mix. The script and target are inputs you provide; no test against your own service is performed by this listing.
Locust can split a run between a master and worker processes or machines. Use that mode when one generator cannot produce the desired traffic, and make sure the workers can reach the target service. The official repository carries the MIT license. The homepage separately mentions Locust.cloud for hosted load testing and support; this record describes the Locust framework, not that hosted service.
Strengths
- User behavior is defined in ordinary Python code, making complex request flows customizable.
- Supports an interactive web UI or a headless command-line run with text results.
- Can distribute load generation across multiple processes or machines.
- The official repository is MIT-licensed.
Watch out for
- A workload must be written and maintained as Python code rather than configured entirely in a GUI.
- A distributed run requires a master and one or more workers, plus network access from the generators to the target.
Best for
- Developers who want to model realistic HTTP user journeys in Python
- Teams measuring response times and throughput with a configurable number of concurrent users
- Load-test operators who need a headless or distributed run in CI or on multiple machines
Sources
- Locust - A modern load testing framework (Oct 25, 2026)
- Your first test — Locust documentation (Oct 25, 2026)
- locust/LICENSE at master · locustio/locust · GitHub (Oct 25, 2026)
