Production-grade test orchestration for Python BDD.
Project description
BehaveX
Production-grade test orchestration for Python BDD.
BehaveX extends Behave with parallel execution, enterprise-grade reporting, and the operational controls needed to run test suites at scale. Downloaded 121,000+ times per month.
โจ Latest Features
๐ช before_all_workers / after_all_workers hooks (v4.6.4) โ New lifecycle hooks that run once in the coordinator process, before any worker starts and after all finish. Values set on context are injected into every worker automatically.
๐ context.behavex execution metadata (v4.6.4) โ BehaveX now injects a context.behavex namespace into every worker: parallel_scheme, parallel_processes, is_worker, worker_id.
๐ซ --no-report flag (v4.6.4) โ Disables all file output. No HTML/JSON/XML reports or output folder are created. Evidence is redirected to the system temp directory. Designed for read-only CI environments.
๐ Stack Trace on Error (v4.6.2) โ Click on any failed step in the HTML report to expand the full stack trace inline.
๐ Gherkin Rule Section Support (v4.6.2) โ Full support for Rule: blocks in feature files.
๐ท๏ธ Tag Expressions v2 (v4.6.0) โ Native Cucumber-style tag expressions with boolean logic, parentheses, and wildcards.
๐ Enhanced Behave Integration (v4.5.0) โ Support for Behave >= 1.3.0. Major performance overhaul.
๐ Interactive Execution Timeline (v4.5.0) โ Visual timeline showing scenario execution across parallel workers.
๐ฏ Test Execution Ordering (v4.4.1) โ Control scenario/feature order in parallel runs with @ORDER_001 tags.
Installation
pip install behavex
Quick Start
# Run all scenarios
behavex
# Run scenarios tagged @smoke with 4 parallel processes
behavex -t=@smoke --parallel-processes=4 --parallel-scheme=scenario
# Cucumber-style tag filtering (Behave 1.3.0+)
behavex -t="(@smoke or @regression) and not @slow" --parallel-processes=4
# Dry run โ list all scenarios in HTML report without executing
behavex -t=@smoke --dry-run
BehaveX vs Behave
BehaveX is a zero-friction upgrade โ your existing feature files and step definitions work unchanged.
| Capability | Behave | BehaveX |
|---|---|---|
| Parallel execution | โ | โ By feature or scenario, N processes |
| HTML report | โ | โ With screenshots, logs, evidence |
| Allure integration | โ | โ Full support with thread labels |
| Auto-retry on failure | โ | โ
@AUTORETRY / @AUTORETRY_3 |
| Test muting | โ | โ
@MUTE โ run but exclude from CI results |
| Execution ordering | โ | โ
@ORDER_001 tags for dependency-aware runs |
| Execution timeline | โ | โ Visual timeline across parallel workers |
| Pass rate & automation metrics | โ | โ Per-run dashboard in HTML report |
| Dry run with HTML report | Basic | โ Shareable spec report |
| Per-scenario log files | โ | โ Linked directly in HTML report |
| Screenshot evidence | โ | โ
Via behavex-images |
Who Uses BehaveX
- Apache NiFi MiNiFi C++ โ The Apache Foundation uses BehaveX for their C++ dataflow agent.
- LambdaTest โ Featured in LambdaTest's official Python BDD documentation.
- SovereignCloudStack โ Used for real-life IaaS/KaaS health monitoring in the Gaia-X ecosystem.
- Qase โ Official integration with the Qase enterprise test management platform.
Using BehaveX? Open a PR to be listed here.
Documentation
Full documentation at behavex.readthedocs.io
Get Involved
BehaveX grows through community use and contribution. If it's useful to your team:
- โญ Star the repo โ helps other teams discover the project
- ๐ Report issues โ your use case helps improve BehaveX for everyone
- ๐ง Contribute โ PRs are welcome, from docs to features
- ๐ข Spread the word โ mention BehaveX when you talk about Python testing
Used by the Apache Foundation, LambdaTest, SovereignCloudStack, and teams worldwide.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file behavex-4.6.5.tar.gz.
File metadata
- Download URL: behavex-4.6.5.tar.gz
- Upload date:
- Size: 638.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50c888b6a0b125fe942ba085c0e019703707a84eeba1390a4d8561e97a92d28b
|
|
| MD5 |
236d6b8a3d2b4d7b0e045c566665b0a7
|
|
| BLAKE2b-256 |
528f347622b76e742176f8fd0f876bc06ce10af503f20f29bdec3456529210c7
|
File details
Details for the file behavex-4.6.5-py3-none-any.whl.
File metadata
- Download URL: behavex-4.6.5-py3-none-any.whl
- Upload date:
- Size: 673.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eac88b1a4c2bdc61ae27af86fb9c1db0ec7b98f25c7dfe69f3ba1eab4ff22f16
|
|
| MD5 |
7be707d1207d8e888cc82b98bbb283fa
|
|
| BLAKE2b-256 |
8cb1d9bf878662650d053c17d7a4a63032943599d2b8a3cc19d766f0c49b8b5d
|