# O que é BDD?

> Behavior-Driven Development

O processo de desenvolvimento que define como o software deve se comportar em frases simples que todos possam entender.

## Definição
O BDD permite que pessoas não técnicas se envolvam no processo de desenvolvimento de software. Ele se concentra no que o usuário fará e como o sistema reagirá, e não nos detalhes técnicos do software. Graças a este método, os desenvolvedores e as unidades de negócios falam a mesma língua.

## Como funciona
Primeiro, o comportamento esperado do sistema é escrito como 'Se o usuário fizer X, o resultado Y deverá ocorrer'. Essas sentenças são então codificadas e testadas. Se o código atender a esse comportamento, o software está funcionando corretamente.

## Onde é usado
É utilizado em projetos de software, principalmente no desenvolvimento de funcionalidades complexas e para reduzir a margem de erro.

## Costuma ser confundido com
Pode ser confundido com TDD; Enquanto o TDD se concentra na robustez do código, o BDD se concentra no comportamento da função aos olhos do usuário.

## Perguntas frequentes
**Por que o BDD é importante?**
Elimina a lacuna de comunicação entre a equipe técnica e a equipe comercial.

**O BDD requer uma linguagem especial?**
Geralmente é usada uma sintaxe simples, como Gherkin, que é muito próxima do inglês e pode ser lida por qualquer pessoa.


## Termos relacionados
- [TDD](/pt/dictionary/tdd/)
- [Testing Framework](/pt/dictionary/testing-framework/)
- [Spec-driven Development](/pt/dictionary/spec-driven-development/)

## Ferramentas relacionadas
- [Catch2](/pt/discover/catch2/)

---
Fonte: TreScout Glossário · https://trescout.com/pt/dictionary/bdd/
