BDD com Cucumber

925 visualizações

Publicada em

Outra apresentação feita na FACENSA, na cadeira de Qualidade de Software, sob orientação do prof. Daniel Wildt.

Publicada em: Tecnologia, Diversão e humor
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
925
No SlideShare
0
A partir de incorporações
0
Número de incorporações
6
Ações
Compartilhamentos
0
Downloads
11
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

BDD com Cucumber

  1. 1. Luciano Costa
  2. 2. behaviour = comportamento
  3. 3. behaviour driven development == desenvolvimento orientado a comportamento BDD
  4. 4. descreva como sua aplicação deve se comportar BDD
  5. 5. teste primeiro, codifique depois! BDD/TDD
  6. 6. codifique somente o necessário para passar no teste BDD/TDD
  7. 7. comportamento
  8. 8. Por que você está aqui?
  9. 9. Estrutura de User Story Sendo um ... Eu quero/necessito ... De modo que ...
  10. 10. Estrutura de User Story Sendo um ... (quem) Eu quero/necessito ... (funcionalidade) De modo que ... (valor de negócio)
  11. 11. Sistema para locadora de DVD’s brilliant! exemplo
  12. 12. 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
  13. 13. 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
  14. 14. 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!
  15. 15. 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!
  16. 16. 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!
  17. 17. Estrutura de User Story Sendo um ... (quem) Eu quero/necessito ... (funcionalidade) De modo que ... (valor de negócio)
  18. 18. 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
  19. 19. behaviour driven development <ul><li>Foco na linguagem </li></ul><ul><li>Colaboração </li></ul><ul><li>Por quê o código deve ser criado em detrimento a detalhes </li></ul><ul><li>Outside-in development </li></ul>
  20. 20. 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
  21. 21. 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
  22. 22. The Art of War Plain Text!
  23. 23. Cucumber é uma ferramenta que executa documentação de funcionalidades escrita em texto puro
  24. 24. Internacionalização! use o seu idioma
  25. 25. integrações
  26. 26. Dúvidas ?
  27. 27. E quanto à tradução de “Cucumber” ? =)
  28. 30. Cucumber = Pepino!
  29. 31. Obrigado, abraço! Luciano Costa [email_address] Don Pepino!

×