Olá pessoal,
Na verdade, esse post não é uma duvida e sim para compartilhar informação/conhecimento com todos…
comecei a estudar TDD (Test-Driven Development) e testes unitários em geral… E resolvi listar as vantagens que existem em se testar o código…
Até mesmo para poder convencer meu Gerente de Projetos entre outras pessoas que ainda acham que testar gasta tempo e não vale a pena… de que testes são uteis e aumentam nossa produtividade!!!
Comecei a fazer uma lista com os itens que achei mais interessantes…
[quote]Fatos:
- Durante o desenvolvimento do softwarer gastamos grande parte do tempo consertando erros, do que adicionando novas funcionalidades…
Beneficios de criar os testes ANTES de criar as funcionalidades (TDD)…
-
Temos certeza que todo o código será testado
-
A tendencia é que implementemos apenas o que for necessário para resolver o problema, e não implementaremos varias funcionalidade que não serão usadas… Programar apenas o necessário para resolver o problema!!!
-
Como o codigo é usado antes mesmo de ser escrito existe uma alta abstração da sua verdadeira implementação… Portanto mais facil enxergas as interfaces, facilitando seu desacoplamente das demais partes do sistema…
-
Teremos rapidamente a oportunidade de usar o metodo e assim já ficar sabendo se o mesmo é simples de ser usado… CODIGO SIMPLES!!!
Beneficios de Usar Testes unitários:
-
Ter certeza que independente do que foi alterado, o que estava funcionando continuará…
-
Maior confiança em adicionar novas funcionalidades
-
Maior confiança para REFATORAR o código existente
-
Ajuda novos programadores a entenderem o código… pois eles tem varios “exemplos” de utilização dos metodos existentes apenas vendo os testes… E nada melhor para aprender alguma coisa doque vendo o exemplos
-
O erro que foi pego uma vez não se repetirá novamente…
-
Proteção para que outros programadores não estragem/insiram bug no seu código…
-
Outro programadores poderão dar manutenção no seu código sem medo de estragar alguma coisa…
Consequencia…
-
Aumento na produtividade, pois vc perde menos tempo consertando erros, e sobra mais tempo para introduzir funcionalidades com segurança, e nos certificamos rapidamente de que: “O que estava funcionando continua…”
-
o código vira sinonimo de qualidade
Resumindo:
Ao contrario do que possa parecer, TESTES aumentam a velocidade no desenvolvimento!!! tb aumentam a segurança de que o código não conterá erros, e com isso aumenta muito a qualidade do código…[/quote]
O que vcs acham?? concordam???
seria legal se cada um incrementasse essa lista com suas experiencias e opiniões… ou até mesmo corrigi-la (caso eu tenha falado alguma besteira… )
Então,
é isso ai
Até mais