Skip to main content

Locust

2vendors are named alongside Locust. 1 source references it, most recently Atos Support for ESA Selection of 12 DestinE Service Providers (Apr 2026).

What is Locust?

Locust is an open-source, Python-based load testing framework (performance testing) for web applications, APIs, and other systems, built around user behavior defined as Python code and a distributed execution model.

Show more
  • Python-based load testing framework for Hypertext Transfer Protocol (HTTP), web applications, and APIs (performance testing)
  • Declarative user behavior definition in Python code using task classes and tasks (test authoring)
  • Web-based user interface for starting, stopping, and monitoring test runs (observability)
  • Distributed and scalable load generation using multiple worker processes and machines (scalability)
  • Extensible architecture for custom clients, protocols, and integration into Continuous Integration and Continuous Deployment (CI/CD) pipelines (tooling and automation)

More About Locust

Locust is an open-source load testing framework (performance testing) that allows engineers to define user behavior in Python code and apply concurrent load against web applications, APIs, and other services. It targets the problem of measuring system performance under concurrent usage patterns by modeling users as Python classes that execute defined tasks with configurable weighting, wait times, and other parameters. Locust focuses on repeatable, code-centric test definitions rather than UI-driven scenario recording.

The core capability of Locust is its user and task model (test authoring), where a test developer creates Python classes that represent different user types and their interactions, such as HTTP requests to specific endpoints or custom protocol operations. These user classes run as greenlets within Locust processes, each simulating a virtual user executing tasks with defined behavior. Locust ships with an HTTP client (HTTP testing) that integrates with this model, enabling tests for Representational State Transfer (REST) APIs, web backends, and other HTTP services.

Locust provides a web-based user interface (observability) for controlling and monitoring load tests. Through this interface, operators can specify the number of users to spawn, the hatch rate, and other runtime parameters. The UI displays metrics such as requests per second, response times, error counts, and failure rates. Locust can also emit statistics in machine-readable formats, supporting automation and integration into build pipelines and reporting tools.

Locust supports distributed execution (scalability) through a master-worker architecture. A master node coordinates one or more worker processes or machines, which execute the user tasks and generate load against the target system. This design allows load tests to scale beyond the capacity of a single host by distributing the virtual users across multiple workers. Configuration options control how workers connect to the master and how tests are synchronized across the cluster.

The framework is extensible (tooling and integration), enabling implementers to write custom user classes that communicate over non-HTTP protocols or use specialized clients. Locust can be run headless from the command line, which supports integration with CI/CD pipelines and automated performance regression testing. Its Python foundation makes it interoperable with the broader Python ecosystem, including libraries for metrics export, data processing, and test orchestration.

In enterprise environments, Locust is used to assess system performance, capacity, and stability under concurrent load (performance engineering). Teams embed Locust tests into their development workflows to validate service-level objectives, compare performance across releases, and detect performance regressions. Within a technical taxonomy, Locust belongs to the categories of load testing tools, performance testing frameworks, and developer-centric testing utilities.