A curated list of awesome resources, tools, libraries, and projects for Behave — BDD, Python style.
Behave is behavior-driven development (BDD), Python style. It uses tests written in a natural language style (Gherkin), backed up by Python code.
- Official Resources
- Formatters & Reporters
- Integrations
- Parallel Execution
- Tooling
- CI/CD Integrations
- IDE & Editor Support
- Learning Resources
- Community Projects & Examples
- Related Awesome Lists
- Behave - Main repository. BDD, Python style.
- Behave Documentation - Official documentation and tutorial.
- Behave Ecosystem - Official listing of ecosystem tools, IDE plugins, and editor support.
- Behave Examples & Tutorials - Progressive tutorials from first steps to advanced features.
- Behave on PyPI - Official PyPI package page.
- Behave Organization - GitHub organization hosting behave, behave-django, and behave.example.
Behave ships with the following formatters: json, json.pretty, plain, pretty, progress, progress2, progress3, rerun, sphinx.steps, steps, steps.bad, steps.catalog, steps.code, steps.doc, steps.usage, tags, tags.location.
Built-in reporters: junit (JUnit XML output), summary (test run summary).
See the official formatter docs for full details.
- allure-behave - Allure framework adapter for Behave. Generates rich HTML test reports with attachments, metadata, and test hierarchies.
- behave-cucumber-formatter - Cucumber JSON formatter for pipeline integration with Xray and other Cucumber-compatible tools.
- behave-html-formatter - Simple HTML formatter for Behave test reports.
- behave-html-pretty-formatter - Pretty HTML formatter inspired by jest-html-reporter. Supports embedded screenshots, pseudo steps, and configurable summaries.
- behave-modern-console-report - Real-time console report formatter with colors, progress indicators, and execution summaries for local development and CI/CD.
- behave-modern-file-reports - PDF, DOCX, and TXT report formatters for Behave. Customizable templates, executive summaries, embedded screenshots, and failed-only filters for stakeholders.
- behave-modern-html-report - Modern interactive HTML report formatter with zero external dependencies.
- behave-modern-json-report - Modern structured JSON report formatter with schema-versioned output and Cucumber JSON compatibility for CI/CD integrations.
- behave-modern-md-report - Markdown report formatter that generates GitHub-friendly execution reports with summaries and statistics.
- behave-modern-sheets-report - CSV and Excel (XLSX) report formatters for Behave. CSV with one row per scenario, Excel with multiple sheets (Summary, Details, Failures, Trends), conditional formatting, and auto-filters.
- behave-teamcity - Formatter for reporting Behave test results to JetBrains TeamCity CI via service messages.
- behave-django - Official Django integration for Behave. Provides a
behavemanagement command and test runner integration. - Flask Test Integration - Official guide for integrating Behave with Flask applications.
- Selenium + Behave - Common integration pattern using Selenium WebDriver with Behave step definitions.
- behave-restful - BDD framework for testing REST APIs on top of Behave. Provides Gherkin language extensions for HTTP requests and response validation.
- Requests + Behave - Pattern using the
requestslibrary within Behave step definitions for API testing.
- appium-python-bdd - BDD test examples with Appium and Behave for mobile automation.
- LambdaTest Behave + Appium - Run Behave and Appium tests on LambdaTest cloud devices.
- Applitools + Behave - Visual regression testing with Applitools, Selenium, and Behave.
- behave-parallel - Parallel execution support for Behave by feature or scenario using multiprocessing.
- behave-pool - Native parallel execution for Behave with multiprocessing, work queue, result aggregation,
@serialtag, and integration with behave-priority and behave-modern-* formatters. Zero dependencies. - BehaveX - Production-grade test orchestration wrapper for Behave with parallel execution, enterprise reporting, and scenario ordering support.
- behave-comments - Parser and extractor for comments and annotations in Behave
.featurefiles. Extract structured metadata from# @id REQ-001style annotations, convert comments to tags, and generate documentation. - behave-data - Random test data utilities for Behave. Faker integration in steps, data providers, dynamic Examples generation, Data Tables with generated data, reproducible seeds, locale support, and reusable templates.
- behave-doctor - Static analysis and diagnostics for Behave suites. Detects unused steps/tags, duplicate steps, tag coverage, feature/scenario complexity, and dependency graphs. Zero dependencies.
- behave-format - Opinionated formatter for Behave
.featurefiles. Like Black, but for Gherkin. - behave-gen - Scaffolding and code generation toolkit for Behave. Project init, step skeletons from .feature files, OpenAPI/Postman codegen, Cucumber migration. Zero dependencies.
- behave-kit - Swiss army knife for Behave. Soft assertions, context dump on failure, conditional skip decorators, environment management, typed context, parameter types, tag-based fixtures, scoped cleanup, and environment variable helpers. Zero dependencies.
- behave-lint - Fast, opinionated, extensible linter for Gherkin
.featurefiles and Behave test suites. - behave-model - Canonical object model for Behave projects with Gherkin v6 Rules, Tag Expression v2, and full Behave 1.3.x compatibility.
- behave-priority - Priority-based execution for Behave. Run critical scenarios first with
@priority(N)tags, fail-fast controls, and smoke-first mode. Zero dependencies. - behave-retry - Automatic retry for failed Behave scenarios with CLI flags, tag overrides, exception filtering, and flakiness stats. Zero dependencies.
- behave-steplib - Reusable step libraries for Behave. Share, discover and install step definitions across projects via entry points. Zero dependencies.
- behave-tables - Polished API for Behave Data Tables with
as_dicts(),as_models(),transpose(),to_csv(), andto_json(). Zero dependencies, type-safe.
- Behave CI/CD Pipeline Guide - Comprehensive guide on integrating Behave into CI/CD pipelines (GitHub Actions, Tox, multi-environment testing).
- GitLab CI + Behave + Pytest - Complete CI/CD pipeline tutorial using Behave, pytest, pre-commit hooks, and GitLab CI.
- JUnit XML Reporter - Built-in
junitreporter for Jenkins and other CI systems that consume JUnit XML. - ParallelBehaveAllureFlow - Reusable GitHub Actions workflow for parallel Behave execution with Allure report generation and retry mechanism.
- Tox - Generic virtualenv management and test tool for running Behave across multiple Python environments in CI.
- Cucumber Official (VS Code) - Official VS Code extension for Cucumber with Gherkin and Behave support.
- Cucumber-Eclipse - Eclipse plugin with Gherkin editor support.
- cuke4vs - Visual Studio plugin with Gherkin editor support.
- PyCharm BDD Support - Built-in Behave and Gherkin support in PyCharm Professional edition.
- Behave Step Finder (Sublime Text) - Navigate to step definitions in Behave projects.
- Cucumber (Sublime Text) - Gherkin editor support with table formatting.
- Gherkin Editor - Online editor for writing
.featurefiles. - NP++ Gherkin (Notepad++) - Gherkin syntax highlighting for Notepad++.
- vim-behave - Vim plugin: port of vim-cucumber to Python Behave.
- Behave Tutorial - Official getting started guide covering feature files, step implementations, context, hooks, and tags.
- Complete Behave BDD Tutorial 2026 - Hands-on tutorial covering installation, project structure, hooks, fixtures, reporting, parallel execution, and Playwright integration.
- BDD Automation: Behave with Python - Behave with Selenium and Appium integration (Udemy).
- Behavior-driven Development (BDD) with Behave and Python - Full course covering Gherkin, Behave features, web testing with Selenium, and CI reporting (Pluralsight).
- Cucumber BDD with Python Behave and Selenium WebDriver 2024 - 19-hour course building a BDD framework with Selenium, API testing, and MySQL (Udemy).
- BDD in Action - BDD principles with examples across multiple languages including Python/Behave, by John Ferguson Smart.
- The Cucumber Book - Gherkin and BDD principles that apply directly to Behave, by Matt Wynne and Aslak Hellesøy.
- BDD with Python Behave - Community YouTube tutorials and conference talks on Behave.
- behave-gui - GUI front-end for Behave test execution.
- cookiecutter-example - Cookiecutter template for generating Behave BDD automation projects with Selenium, Allure, and configurable options.
- python-behave-examples - Repository with practical examples of using the Behave library in Python.
- Python-Behave-sample-project - Sample BDD automation project with Page Object Model pattern.
- Python_Selenium_BDD_Framework - Comprehensive framework with Selenium for UI, Requests for API, and BehaveX for parallel execution.
- try-behave - Try Behave directly in the browser using Pyodide, no installation required.
- Awesome BDD - General BDD ecosystem resources across all languages.
- Awesome Playwright - Curated list of Playwright tools and resources.
- Awesome Python - General curated list of Python frameworks, libraries, and software.
- Awesome Python Testing - Collection of Python testing resources and frameworks.
- Awesome Selenium - Curated list of Selenium tools and resources.
Contributions are welcome! Please read the contributing guidelines before submitting a pull request.