id = "bzt"
name = "Taurus"
homepage = "https://gettaurus.org/"
description = "An open-source automation framework for performance testing."
executables = ["bzt"]
platforms = ["macos", "linux"]
[dotfiles]
paths = ["~/.bzt-rc"]
exclude = []
secret = []
[[dotfiles.secret_paths]]
file = "~/.bzt-rc"
format = "yaml"
match = { key_path = ["modules.cloud.token"] }
[commands]
format = 1
label = "Run a test"
description = "Run Taurus with config files or URLs. Aliases and JMX shorthand are passed as plain arguments; cloud and module settings go through overrides."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false }
[[commands.source]]
id = "docs"
kind = "manual"
url = "https://raw.githubusercontent.com/Blazemeter/taurus/HEAD/site/dat/docs/CommandLine.md"
revision = "HEAD 2026-10-27"
evidence = """
Command-line tool is named `bzt` and invoked like `bzt <options> \\[configs]`. Possible options are:
- `-q, --quiet` - only errors and warnings printed to console
- `-n, --no-system-configs` - skip `/etc/bzt.d` and `~/.bzt-rc` (see below)
- `-v, --verbose` - prints all logging messages to console (sometimes _a lot_)
- `-l LOG, --log=LOG` - change log file location, by default is `bzt.log` in current directory
- `-o OPTION, --option=OPTION` override some config settings from command line, may be used multiple times
bzt http://blazedemo.com/
bzt config-1.yml config-2.json
"""
[[commands.field]]
id = "quiet"
label = "Quiet"
description = "Only errors and warnings on the console."
type = "boolean"
option = ["--quiet", "-q"]
sources = ["docs"]
[[commands.field]]
id = "verbose"
label = "Verbose"
type = "boolean"
option = ["--verbose", "-v"]
sources = ["docs"]
[[commands.field]]
id = "no_system_configs"
label = "Skip system configs"
description = "Skip /etc/bzt.d and ~/.bzt-rc."
type = "boolean"
option = ["--no-system-configs", "-n"]
sources = ["docs"]
[[commands.field]]
id = "log"
label = "Log file"
description = "Defaults to bzt.log in the current directory."
type = "path"
option = ["--log", "-l"]
path = { kind = "file", role = "output", must_exist = false }
effect = "overwrite"
sources = ["docs"]
[[commands.field]]
id = "override"
label = "Config override"
description = "path=value, for example provisioning=cloud. May be repeated."
type = "string"
option = ["--option", "-o"]
multiple = true
sources = ["docs"]
[[commands.field]]
id = "configs"
label = "Configs or URLs"
description = "YAML/JSON config files, .jmx files or a target URL."
type = "string"
position = 0
multiple = true
sources = ["docs"]
[[commands.task]]
id = "run"
label = "Run configs"
fields = ["configs", "override", "log"]
required = ["configs"]
[[commands.task]]
id = "quick"
label = "Quick URL test"
fields = ["configs", "quiet"]
required = ["configs"]
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["configs", "override", "log"]
[[commands.group]]
id = "advanced"
label = "Advanced"
fields = ["quiet", "verbose", "no_system_configs"]