BDD
Behavior-Driven Development

Fabiano da Ventura
•Desenvolvido por Dan Noth (2003).

“Desenvolvimento Orientado por Comportamento é
sobre a implementação em uma aplicação que
descreve seu comportamento na perspectiva dos
stakeholders.”Dan North
• Combina princípios e técnicas gerais do TDD
com ideias de DDD (Domain-Driven Design) e
OOAD (Object-Oriented Analysis and Design) para
favorecer os desenvolvedores de software e
analistas de negócios, com ferramentas e
processos compartilhados para colaborar no
desenvolvimento de software.

•Fonte: http://en.wikipedia.org/wiki/Behavior_driven_development
Papéis

• Desenvolvedores
• Analistas de Negócios
Ciclo de Vida – Fluxo de Trabalho

• Inicia dos requisitos e da visão do cliente
(outside) até os artefatos de software (in)
Artefatos

• Use Case
• Use Story
O Ciclo Outside-in
1.
1.Foco em um cenário
2.
2.Escreva uma especificação para este cenário
3.
3.Escreva uma especificação de unidade
4.
4.Faça a especificação de unidade passar
5. Refatore
Processo
Os Testes de Aceitação devem ser escritos
usando User Story. Com a seguinte estrutura:
Com a [regra]
Eu quero [característica]
Então que [benefício]
O Critério de Aceitação deve ser escrito em
termos de cenários e implementados como
classes:
Dado [contexto inicial]
Quando [evento ocorre]
Então [certeza de algum resultado].
User Stoty

Acceptance
Criteria
Fonte: http://www.iteste.com.br/LinkClick.aspx?fileticket=ID3wNKjKeWg%3D&tabid=320&mid=1205
Ferramentas

Fonte: http://www.iteste.com.br/LinkClick.aspx?fileticket=ID3wNKjKeWg%3D&tabid=320&mid=1205
BDD Na Prática
Obrigado!

Desenvolvimento BDD