Command line

Environment

Config file

Description

-f, --locustfile

LOCUST_LOCUSTFILE

locustfile

The Python file or module that contains your test, e.g. ‘my_test.py’. Accepts multiple comma-separated .py files, a package name/directory or a url to a remote locustfile. Defaults to ‘locustfile.py’.

-H, --host

LOCUST_HOST

host

Host to load test, in the following format: https://www.example.com

-u, --users

LOCUST_USERS

users

Peak number of concurrent Locust users. Primarily used together with –headless or –autostart. Can be changed during a test by keyboard inputs w, W (spawn 1, 10 users) and s, S (stop 1, 10 users)

-r, --spawn-rate

LOCUST_SPAWN_RATE

spawn-rate

Rate to spawn users at (users per second). Primarily used together with –headless or –autostart

-t, --run-time

LOCUST_RUN_TIME

run-time

Stop after the specified amount of time, e.g. (300s, 20m, 3h, 1h30m, etc.). Only used together with –headless or –autostart. Defaults to run forever.

--config-users

LOCUST_CONFIG_USERS

config-users

User configuration as a JSON string or file. A list of arguments or an Array of JSON configuration may be provided

--web-host

LOCUST_WEB_HOST

web-host

Host to bind the web interface to. Defaults to ‘*’ (all interfaces)

--web-port, -P

LOCUST_WEB_PORT

web-port

Port on which to run web host

--headless

LOCUST_HEADLESS

headless

Disable the web interface, and start the test immediately. Use -u and -t to control user count and run time

--autostart

LOCUST_AUTOSTART

autostart

Starts the test immediately (like –headless, but without disabling the web UI)

--autoquit

LOCUST_AUTOQUIT

autoquit

Quits Locust entirely, X seconds after the run is finished. Only used together with –autostart. The default is to keep Locust running until you shut it down using CTRL+C

--web-login

LOCUST_WEB_LOGIN

web-login

Protects the web interface with a login page. See https://docs.locust.io/en/stable/extending-locust.html#authentication

--tls-cert

LOCUST_TLS_CERT

tls-cert

Optional path to TLS certificate to use to serve over HTTPS

--tls-key

LOCUST_TLS_KEY

tls-key

Optional path to TLS private key to use to serve over HTTPS

--class-picker

LOCUST_USERCLASS_PICKER

class-picker

Enable select boxes in the web interface to choose from all available User classes and Shape classes

--master

LOCUST_MODE_MASTER

master

Launch locust as a master node, to which worker nodes connect.

--master-bind-host

LOCUST_MASTER_BIND_HOST

master-bind-host

IP address for the master to listen on, e.g ‘192.168.1.1’. Defaults to * (all available interfaces).

--master-bind-port

LOCUST_MASTER_BIND_PORT

master-bind-port

Port for the master to listen on. Defaults to 5557.

--expect-workers

LOCUST_EXPECT_WORKERS

expect-workers

Delay starting the test until this number of workers have connected (only used in combination with –headless/–autostart).

--expect-workers-max-wait

LOCUST_EXPECT_WORKERS_MAX_WAIT

expect-workers-max-wait

How long should the master wait for workers to connect before giving up. Defaults to wait forever

--worker

LOCUST_MODE_WORKER

worker

Set locust to run in distributed mode with this process as worker. Can be combined with setting –locustfile to ‘-’ to download it from master.

--processes

LOCUST_PROCESSES

processes

Number of times to fork the locust process, to enable using system. Combine with –worker flag or let it automatically set –worker and –master flags for an all-in-one-solution. Not available on Windows. Experimental.

--master-host

LOCUST_MASTER_NODE_HOST

master-host

Hostname of locust master node to connect to. Defaults to 127.0.0.1.

--master-port

LOCUST_MASTER_NODE_PORT

master-port

Port to connect to on master node. Defaults to 5557.

--web-base-path

LOCUST_WEB_BASE_PATH

web-base-path

Base path for the web interface (e.g., ‘/locust’). Default is empty (root path).

-T, --tags

LOCUST_TAGS

tags

List of tags to include in the test, so only tasks with at least one matching tag will be executed

-E, --exclude-tags

LOCUST_EXCLUDE_TAGS

exclude-tags

List of tags to exclude from the test, so only tasks with no matching tags will be executed

--csv

LOCUST_CSV

csv

Store request stats to files in CSV format. Setting this option will generate three files: <filename>_stats.csv, <filename>_stats_history.csv and <filename>_failures.csv. Any folders part of the prefix will be automatically created

--csv-full-history

LOCUST_CSV_FULL_HISTORY

csv-full-history

Store each stats entry in CSV format to _stats_history.csv file. You must also specify the ‘–csv’ argument to enable this.

--print-stats

LOCUST_PRINT_STATS

print-stats

Enable periodic printing of request stats in UI runs

--only-summary

LOCUST_ONLY_SUMMARY

only-summary

Disable periodic printing of request stats during –headless run

--reset-stats

LOCUST_RESET_STATS

reset-stats

Reset statistics once spawning has been completed. Should be set on both master and workers when running in distributed mode

--html

LOCUST_HTML

html

Store HTML report to file path specified. Able to parse certain tags - {u}, {r}, {t} and convert them to number of users, spawn rate and run time respectively.

--skip-log-setup

LOCUST_SKIP_LOG_SETUP

skip-log-setup

Disable Locust’s logging setup. Instead, the configuration is provided by the Locust test or Python defaults.

--loglevel, -L

LOCUST_LOGLEVEL

loglevel

Choose between DEBUG/INFO/WARNING/ERROR/CRITICAL. Default is INFO.

--logfile

LOCUST_LOGFILE

logfile

Path to log file. If not set, log will go to stderr

--exit-code-on-error

LOCUST_EXIT_CODE_ON_ERROR

exit-code-on-error

Sets the process exit code to use when a test result contain any failure or error. Defaults to 1.

-s, --stop-timeout

LOCUST_STOP_TIMEOUT

stop-timeout

Number of seconds to wait for a simulated user to complete any executing task before exiting. Default is to terminate immediately. When running distributed, this only needs to be specified on the master.

--otel

LOCUST_ENABLE_OPENTELEMETRY

otel

Instrument the Locust test run with OpenTelemetry.