Skip to content
Lars Holmberg edited this page Apr 26, 2024 · 21 revisions

3rd party extensions

Support for load testing other protocols, reporting etc

  • locust-plugins

    • request logging & graphing
    • new protocols like websockets, selenium/webdriver, http users that load html page resources
    • readers (ways to get test data into your tests)
    • wait time (custom wait time functions)
    • debug (support for running a single user in the debugger)
    • checks (adds command line parameters to set locust exit code based on requests/s, error percentage and average response times)

Automate distributed runs over SSH

Automatically translate a browser recording (HAR-file) to a locustfile

Workers written in other languages than Python

A Locust master and a Locust worker communicate by exchanging msgpack messages, which is supported by many languages. So, you can write your User tasks in any languages you like. For convenience, some libraries do the job as a worker runner. They run your User tasks, and report to master regularly.

Configuration Management

  • ansible-role-locust - an Ansible role to install, configure and control Locust as a systemd service, or to build Locust docker images using ansible-container. Also manages locustfiles and accompanying test data.
  • locust_slave - an Ansible role to manage Locust slave instances.

Helm

DeliveryHero maintains an extensive list of helm charts, including one for locust.

Kubernetes Operator

AbdelrhmanHamouda has written a Kubernetes Operator for Locust