Taurus Tool for Continuous Testing
Taurus (bzt) is a free and open-source automation-friendly framework for Continuous Testing. It simplifies the complexity of performance and functional test execution by acting as a wrapper for popular testing tools like JMeter, Gatling, Locust.io, and Selenium WebDriver. The current version is 1.16.49, released on February 23, 2026, and it maintains a regular release cadence with updates and new features.
Warnings
- gotcha Taurus orchestrates various external testing tools (e.g., JMeter, Gatling, Selenium, Locust.io). While Taurus can auto-install some of these, you often need to ensure their prerequisites (like Java for JMeter) are installed and configured in your environment for optimal and stable operation.
- gotcha When combining multiple configuration files or using command-line overrides, Taurus merges these configurations. Later specified files and command-line options will override earlier values, which can lead to unexpected behavior if not understood. Configuration includes special prefixes (`~` to overwrite, `^` to delete).
- gotcha It is highly recommended to avoid placing sensitive information such as API keys or authentication tokens directly within your main test configuration YAML/JSON files. These files may be shared or included in artifact directories.
- deprecated The `nose executor` was officially removed in Taurus version 1.14.1 (released February 2020).
Install
-
pip install bzt -
pip install --upgrade wheel setuptools Cython pip install bzt
Imports
- bzt
bzt <config.yml>
Quickstart
import os
config_content = """
execution:
- concurrency: 10
ramp-up: 1m
hold-for: 1m30s
scenario: simple
scenarios:
simple:
think-time: 0.75s
requests:
- http://blazedemo.com/
- http://blazedemo.com/vacation.html
"""
with open("test.yml", "w") as f:
f.write(config_content)
print("Created test.yml. Run with: bzt test.yml")
# To run programmatically (not recommended for general use, primarily for internal/advanced):
# from bzt.cli import main
# main(['test.yml'])