Testes de Unidade, por que você deve começar a fazer? - Javaneiros

254 visualizações

Publicada em

Mais detalhes sobre o que são testes de unidade, quais os benefícios, por que fazer, como fazer e até onde fazer

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

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

Nenhuma nota no slide

Testes de Unidade, por que você deve começar a fazer? - Javaneiros

  1. 1. Testes de Unidade, por que você deve começar a fazer? Renan Siravegna @RenanSiravegna
  2. 2. @RenanSiravegna http://renansiravegna.wordpress.com/
  3. 3. Vocês testam o seu código?
  4. 4. Ciclo do desenvolvimento Codificação FinalizaçãoTestes 2 mins 2 mins 1 min Tempo total: 5 minutos (E isto é apenas uma suposição...)
  5. 5. Ciclo do desenvolvimento (de verdade) Tempo total: 21 Minutos Codificação FinalizaçãoTestes 2 mins 2 mins 1 min Repetição (5 vezes)
  6. 6. E se você testasse todas as funcionalidades que seu código pode ter afetado?
  7. 7. Pior ainda.. E se você testasse o seu sistema inteiro?
  8. 8. Levaria dias? Semanas? Meses?
  9. 9. Testar manualmente demora!!
  10. 10. Existe solução?
  11. 11. Automatizar tudo!! Criar testes de unidade!!
  12. 12. O que é teste de unidade? Um pedaço de código que irá chamar outro pedaço de código e irá verificar algumas suposições. Caso as suposições sejam erradas, o teste irá falhar. Unidade é um único e determinado comportamento.
  13. 13. Escrever código que testa código
  14. 14. Como?
  15. 15. Codificação FinalizaçãoEscrita de testes 2 mins 5 min 1 min Tempo dos testes: 16 minutos Repetição (5 vezes) Testes 5 ms
  16. 16. Outros benefícios • Meu sistema funciona!!! • Testes de Regressão • Não tenho medo de alterar meu código • No final das contas, sai mais barato • É mais fácil de encontrar um bug no código • Você consegue ver melhor como seu código será usado • Muito mais divertido! • Melhora a qualidade do código
  17. 17. Qualidade de código com testes de unidade
  18. 18. Problemas • Falta de conhecimento de Orientação a Objetos • Não pensar corretamente nos cenários • Fica chato se você não faz da forma correta
  19. 19. TDD
  20. 20. Começar testando (antes mesmo de existir o código de produção)
  21. 21. Como assim?
  22. 22. Benefícios • Foco no objetivo • Código nasce testado • Sem soluções complexas • Código limpo, mais coeso e menos desacoplado • Maior cobertura de código • Satisfação de ver seu sistema funcionando de ponta a ponta
  23. 23. Mas... Não é a mesma coisa que escrever os testes depois???
  24. 24. Problemas • Aprendizado • Mudança de cultura • Exige prática • Refatoração
  25. 25. Refatoração É uma técnica disciplinada para reestruturar um corpo existente de código, alterando a sua estrutura interna sem alterar seu comportamento externo.
  26. 26. E o que eu ganho com isso? • Comentários no código se tornam desnecessários • Código pode ser facilmente entendido por todos • Fácil de testar • Fácil de compreender • Extensibilidade • Melhor leitura e escrita
  27. 27. Até quando eu devo testar? • Desencane de cobrir 100% o seu código • Teste até onde os testes de unidade são necessários • Teste somente o que é relevante
  28. 28. O que não testar • Getters • Setters • Classes da linguagem • Trechos simples demais • Integração entre partes do sistema (falando em testes de unidade) • Quando você sabe que o teste vai passar antes de implementar
  29. 29. Leituras recomendadas

×