{"id":5868,"library":"bzt","title":"Taurus Tool for Continuous Testing","description":"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.","status":"active","version":"1.16.49","language":"en","source_language":"en","source_url":"https://github.com/Blazemeter/taurus","tags":["testing","performance testing","load testing","functional testing","automation","jmeter","selenium","gatling","locust"],"install":[{"cmd":"pip install bzt","lang":"bash","label":"Install latest version"},{"cmd":"pip install --upgrade wheel setuptools Cython\npip install bzt","lang":"bash","label":"Recommended installation"}],"dependencies":[{"reason":"Core dependency, requires >=3.6.","package":"Python","optional":false},{"reason":"Required for JMeter executor functionality.","package":"Java","optional":true},{"reason":"Underlying testing tools that Taurus orchestrates. Taurus can auto-install them if not found.","package":"JMeter, Gatling, Locust.io, Selenium WebDriver","optional":true}],"imports":[{"note":"Taurus is primarily a command-line interface (CLI) tool that consumes YAML or JSON configuration files. Direct programmatic import and execution of the `bzt` module is not the standard or recommended user interaction pattern.","wrong":"import bzt; bzt.run_test()","symbol":"bzt","correct":"bzt <config.yml>"}],"quickstart":{"code":"import os\n\nconfig_content = \"\"\"\nexecution:\n- concurrency: 10\n  ramp-up: 1m\n  hold-for: 1m30s\n  scenario: simple\nscenarios:\n  simple:\n    think-time: 0.75s\n    requests:\n    - http://blazedemo.com/\n    - http://blazedemo.com/vacation.html\n\"\"\"\n\nwith open(\"test.yml\", \"w\") as f:\n    f.write(config_content)\n\nprint(\"Created test.yml. Run with: bzt test.yml\")\n# To run programmatically (not recommended for general use, primarily for internal/advanced):\n# from bzt.cli import main\n# main(['test.yml'])","lang":"python","description":"Create a YAML configuration file (e.g., `test.yml`) defining your test scenarios and execution parameters, then run it from the command line using `bzt <filename>`. Taurus will execute the test and provide a summary of results."},"warnings":[{"fix":"Consult the Taurus documentation for specific executor requirements. For JMeter, ensure Java is installed and accessible. For specific versions of underlying tools, configure their paths in your Taurus YAML file (e.g., `modules.jmeter.path`).","message":"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.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Familiarize yourself with Taurus's configuration merging rules. For debugging, check the `merged.yml` or `effective.yml` files in the artifacts directory to see the final applied configuration. Prioritize using `~/.bzt-rc` for user-specific settings and command-line flags (`-o`) for temporary overrides.","message":"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).","severity":"gotcha","affected_versions":"All versions"},{"fix":"Store sensitive data in your personal per-user configuration file (`~/.bzt-rc`) which is not copied to artifact directories, or use environment variables, and reference them in your test configurations.","message":"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.","severity":"gotcha","affected_versions":"All versions"},{"fix":"If migrating from older Taurus configurations, update your test setup to use supported executors like Apiritif, PyTest, Selenium, or other integrated tools.","message":"The `nose executor` was officially removed in Taurus version 1.14.1 (released February 2020).","severity":"deprecated","affected_versions":">=1.14.1"}],"env_vars":null,"last_verified":"2026-04-14T00:00:00.000Z","next_check":"2026-07-13T00:00:00.000Z"}