behaviour driven development == desenvolvimento orientado a comportamento BDD
descreva como sua aplicação deve se comportar BDD
teste primeiro, codifique depois! BDD/TDD
codifique somente o necessário para passar no teste BDD/TDD
comportamento
Por que você está aqui?
Estrutura de User Story Sendo um ... Eu quero/necessito ... De modo que ...
Estrutura de User Story Sendo um ... (quem) Eu quero/necessito ... (funcionalidade) De modo que ... (valor de negócio)
Sistema para locadora de DVD’s brilliant! exemplo
Funcionalidade: Usuário lista filmes a alugar com prioridade Para aumentar a quantidade de filmes alugados O usuário cadastrado Necessita informar os filmes que deseja assistir
Funcionalidade : Usuário lista filmes a alugar com prioridade Para aumentar a quantidade de filmes alugados O usuário cadastrado Necessita informar os filmes que deseja assistir
Funcionalidade : Usuário lista filmes a alugar com prioridade Para aumentar a quantidade de filmes alugados O usuário cadastrado Necessita informar os filmes que deseja assistir Ooops! Eu acho que vi um padrão!
Funcionalidade : Usuário lista filmes a alugar com prioridade Para aumentar a quantidade de filmes alugados O usuário cadastrado Necessita informar os filmes que deseja assistir Lembra User Story? Ooops! Eu acho que vi um padrão!
Funcionalidade: Usuário lista filmes a alugar com prioridade Para aumentar a quantidade de filmes alugados O usuário cadastrado Necessita informar os filmes que deseja assistir (quem) (funcionalidade) (valor de negócio) Glup! Eu vi sim! Eu vi sim!
Estrutura de User Story Sendo um ... (quem) Eu quero/necessito ... (funcionalidade) De modo que ... (valor de negócio)
Funcionalidade: Usuário lista filmes a alugar com prioridade Para aumentar a quantidade de filmes alugados O usuário cadastrado Necessita informar os filmes que deseja assistir (quem) (funcionalidade) (valor de negócio) Cucumber Feature
behaviour driven development
Foco na linguagem
Colaboração
Por quê o código deve ser criado em detrimento a detalhes
Outside-in development
Funcionalidade : Usuário lista filmes a alugar com prioridade Para aumentar a quantidade de filmes alugados O usuário cadastrado Necessita informar os filmes que deseja assistir Cenário : Alta prioridade Dado que estou autenticado Quando eu clicar no filme “Elvis” E apertar o botão “prioridade alta” Então eu devo ver “filme adicionado à lista” E devo ver “Elvis” na minha lista E “Elvis” deve estar marcado como “prioridade alta” Cenário : .... Dado ... Quando ... Então ... /features/aluguel.feature
Dado “que estou autenticado” do //code end Quando “eu clicar no filme “Elvis”” do //code end E “apertar o botão “prioridade alta”” do //code end Então “eu devo ver “filme adicionado à lista”” do //code end E “devo ver “Elvis” na minha lista” do //code end E ““Elvis” deve estar marcado como “prioridade alta”” do //code end /features/steps/aluguel_steps.rb
The Art of War Plain Text!
Cucumber é uma ferramenta que executa documentação de funcionalidades escrita em texto puro
Internacionalização! use o seu idioma
integrações
Dúvidas ?
E quanto à tradução de “Cucumber” ? =)
Cucumber = Pepino!
Obrigado, abraço! Luciano Costa [email_address] Don Pepino!
0 comments
Post a comment