Test Driven Development: Abre alas

1.420 visualizações

Publicada em

Slides usados para um treinamento rápido sobre TDD.

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

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

Nenhuma nota no slide
  • Test Driven Development: Abre alas

    1. 1. TEST DRIVEN DEVELOPMENT http://www.flickr.com/photos/lachlanhardy/2092147736/
    2. 2. por que testamos?
    3. 3. Como testamos?
    4. 4. MANUALMENTE
    5. 5. AUTOMATICAMENTE
    6. 6. Antes de TDD http://www.flickr.com/photos/flioukas/575773633/
    7. 7. 1999
    8. 8. Código escrito antes dos testes é difícil de testar
    9. 9. Código escrito antes dos testes é difícil de usar
    10. 10. DESIGN
    11. 11. Design é uma atividade e não um processo
    12. 12. TDD é um método para design de software, e não apenas testes
    13. 15. Testes verificam a usabilidade do código
    14. 16. TDD é difícil
    15. 17. BDD
    16. 18. "I decided it must be possible to present TDD in a way that gets straight to the good stuff and avoids all the pitfalls.“ Dan North http://dannorth.net/introducing-bdd
    17. 19. BDD é um guia de como fazer TDD da maneira certa
    18. 20. <ul><li>As a [X] </li></ul><ul><li>I want [Y] </li></ul><ul><li>So that [Z] </li></ul>
    19. 21. <ul><li>Given [contexto] </li></ul><ul><li>And [contexto adicional] </li></ul><ul><li>When [evento] </li></ul><ul><li>Then [verifique as saídas] </li></ul>
    20. 22. Anatomia de um teste
    21. 23. <ul><li>@Test </li></ul><ul><li>public void [descreva o contexto]{ </li></ul><ul><li>Given [setup do contexto] </li></ul><ul><li>And [setup adicional] </li></ul><ul><li>When [o comportamento] </li></ul><ul><li>Then [verifique a saída] </li></ul><ul><li>} </li></ul>
    22. 24. <ul><li>@Test </li></ul><ul><li>public void deveRecuperarPrimeiroItem { </li></ul><ul><li>// Given, And.. </li></ul><ul><li>Lista lista = new Lista(); </li></ul><ul><li>lista.add( 1 ).add( 2 ).add( 3 ); </li></ul><ul><li>// When </li></ul><ul><li>int primeiro = lista.primeiro(); </li></ul><ul><li>// Then </li></ul><ul><li>assertEquals( 1 , primeiro); </li></ul><ul><li>} </li></ul>
    23. 25. Mão na massa!
    24. 26. Feedback
    25. 27. epílogo
    26. 28. todos os projetos nascem com ambiente limpo http://blog.objectmentor.com/articles/2009/01/09/the-big-redesign-in-the-sky
    27. 29. Desenvolvedores profissionais escrevem testes. Simples assim. http://blog.fragmental.com.br/2007/10/31/programadores-profissionais-escrevem-testes-ponto-final/
    28. 30. seja curioso http://marcospereira.wordpress.com/2007/08/18/motor-curiosidade/
    29. 31. Você é o principal responsável pela qualidade do seu trabalho http://www.artima.com/weblogs/viewpost.jsp?thread=71730
    30. 32. O time, a empresa, o ambiente não melhoram se você não melhorar primeiro http://www.codeidol.com/other/extreme-programming/Applying-XP/Applying-XP/
    31. 33. Pense sobre como você trabalha http://gettingreal.37signals.com/toc.php
    32. 34. marcos silva pereira http://marcospereira.wordpress.com

    ×