All glossary terms
Verify

BDD

Behavior-Driven Development is a software practice that builds on TDD by writing tests in business-readable, scenario-style language (typically Gherkin). The goal: shared understanding between engineering, product, and stakeholders. The tests become living documentation that non-engineers can read, write, and maintain.

Where TDD focuses on unit-level design pressure, BDD focuses on behaviour at the feature level — "given X, when Y, then Z" scenarios that map directly to acceptance criteria. The tooling (Cucumber, SpecFlow, etc.) parses Gherkin scenarios and runs them as automated tests. BDD's main payoff is reducing the gap between what product asked for and what engineering delivered; its main cost is the writing-tests-in-natural-language overhead, which some teams find awkward versus pure code-based tests.

Related terms