Skip to content

behave-lint

A fast, opinionated, extensible linter for Gherkin .feature files and Behave test suites.

Features

  • 41 built-in rules across 6 categories: correctness, step definitions, consistency, complexity, style, and pedantic.
  • Auto-fix support for 14 rules (safe and unsafe).
  • Watch mode — re-lint on file changes with --watch.
  • LSP server — real-time diagnostics in any LSP-compatible editor.
  • Multiple output formats: console, JSON, SARIF, Markdown, GitHub Actions annotations.
  • Plugin system for custom rules and reporters.
  • Configurable via pyproject.toml ([tool.behave-lint] section).
  • Fast — caches parsed models for incremental linting.

Quick start

pip install behave-lint
behave-lint features/

Documentation