Acceptance Test-Driven Development (ATDD)  Behavior-Driven Development (BDD)   Specification by    Example (SBE)          ...
Software sem bugs não é suficiente,é preciso escrever o software certo.           Construir sem defeitos      Fracasso    ...
ATDD  “The first rule of any technology used in a  business is that automation applied to anefficient operation will magni...
ATDD• Transformar user stories em testes• TDD em um nível mais alto
BDD“a second-generation, outside-in, pull-based,    multiple-stakeholder, multiple-scale,    high-automation, agile method...
BDD• Maior foco no cliente• Preocupação maior com entrega de valor• Descoberta de novas informações
SBE•   Foca nos exemplos•   Busca a colaboração•   Busca a descoberta•   Não tem a carga de má interpretações•   Fornece u...
Derivar escopo dos objetivos
Especifique em colaboração
Ilustre utilizando exemplos
Refine a especificação
Refine a especificação• Precisa e testável• Especificação não é script• Auto explicativa• Escrita na linguagem do domínio
Automatize
Automatize• Trate código de teste com muito cuidado• Automatize em diferentes níveis• Investimento inicial alto• Feedback ...
Automatize
Valide com frequência
Construa uma documentação
SpecFlow• Framework open source BDD/ATDD• Utilizar Gherkin como DSL para as  especificações• Utiliza ferramentas padrões d...
Gherkin• Uma DSL para escrita de especificações no  estilo de estórias. Dado / Ao / Então• Nasceu na comunidade ruby• Perm...
Pickles
DEMOSpecFlowIntegração Negócio
“SBE”•     Usar SpecFlow para automatização de teste•     Cliente?! Que cliente??•     Usar como ferramenta de testes de i...
SBE!•   Colaboração•   Exemplos bem escritos•   Automatização•   Documentação
Obrigado!     @rmuellerrafael@inventti.com.br
Specification By Example - BluDotNet
Specification By Example - BluDotNet
Specification By Example - BluDotNet
Próximos SlideShares
Carregando em…5
×

Specification By Example - BluDotNet

1.530 visualizações

Publicada em

Palestra que ministrei no BluDotNet em 06/04/2013 sobre specification by example

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

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

Nenhuma nota no slide

Specification By Example - BluDotNet

  1. 1. Acceptance Test-Driven Development (ATDD) Behavior-Driven Development (BDD) Specification by Example (SBE) @rmueller
  2. 2. Software sem bugs não é suficiente,é preciso escrever o software certo. Construir sem defeitos Fracasso Sucesso Comercial Produto Certo Lixo Pesadelo
  3. 3. ATDD “The first rule of any technology used in a business is that automation applied to anefficient operation will magnify the efficiency. The second is that automation applied to an inefficient operation will magnify the inefficiency.” Bill Gates
  4. 4. ATDD• Transformar user stories em testes• TDD em um nível mais alto
  5. 5. BDD“a second-generation, outside-in, pull-based, multiple-stakeholder, multiple-scale, high-automation, agile methodology” Dan North, 2009
  6. 6. BDD• Maior foco no cliente• Preocupação maior com entrega de valor• Descoberta de novas informações
  7. 7. SBE• Foca nos exemplos• Busca a colaboração• Busca a descoberta• Não tem a carga de má interpretações• Fornece uma documentação viva• Amigável para não técnicos
  8. 8. Derivar escopo dos objetivos
  9. 9. Especifique em colaboração
  10. 10. Ilustre utilizando exemplos
  11. 11. Refine a especificação
  12. 12. Refine a especificação• Precisa e testável• Especificação não é script• Auto explicativa• Escrita na linguagem do domínio
  13. 13. Automatize
  14. 14. Automatize• Trate código de teste com muito cuidado• Automatize em diferentes níveis• Investimento inicial alto• Feedback imediato, documentação viva e testes de regressão• Automatize sem alterar as especificações
  15. 15. Automatize
  16. 16. Valide com frequência
  17. 17. Construa uma documentação
  18. 18. SpecFlow• Framework open source BDD/ATDD• Utilizar Gherkin como DSL para as especificações• Utiliza ferramentas padrões do .net, como o VisualStudio e nUnit, msTest ou xUnit• Iniciou desenvolvimento em 2009• Já foi utilizado em vários projetos
  19. 19. Gherkin• Uma DSL para escrita de especificações no estilo de estórias. Dado / Ao / Então• Nasceu na comunidade ruby• Permite automatização e execução da especificação• Utiliza vocabulário próprio • Dado, E, Então, Cenário, Mas...
  20. 20. Pickles
  21. 21. DEMOSpecFlowIntegração Negócio
  22. 22. “SBE”• Usar SpecFlow para automatização de teste• Cliente?! Que cliente??• Usar como ferramenta de testes de integração• Ligar o turbo!• Especificar tudo http://www.jamesshore.com/Blog/Five-Ways-to-Misuse-Fit.html
  23. 23. SBE!• Colaboração• Exemplos bem escritos• Automatização• Documentação
  24. 24. Obrigado! @rmuellerrafael@inventti.com.br

×