Vamos falar sobre TDD?
- #Testes unitários
- #TDD
Afinal, o que seria TDD?
TDD é uma sigla para Test Driven Development, (traduzindo para o português, Desenvolvimento Orientado a Testes).
No TDD, a ideia é que você trabalhe em ciclos:
• Forçar a falha: escreva um pequeno teste automatizado que, ao ser executado, irá falhar;
• Desenvolver : implemente um código que seja suficiente para ser aprovado no teste recém-escrito;
• Refatorar: refatore o código, a fim dele ser melhorado, deixando-o mais funcional e mais limpo;
Hoje em dia, existem diversas ferramentas que nos fazem ganhar ainda mais tempo, como por exemplo:
● .NET – NUnit
● PHP – PHPUnit
● Node ou Javascript – Jasmine
● Java – JUnit
● Python – PyUnit
Vale ressaltar que TDD não é uma forma de escrever teste, e sim, uma metodologia para desenvolvimento e escrita código.
Sua empresa utiliza o TDD?
A minha, infelizmente não utiliza o TDD. Apenas ocorre as implementações, e como já sabemos, os "testes são em produção".
Isso é grave, pois gera um custo absurdo para a companhia, e acredito que isso seja a realidade de várias empresas por aí.
gostei do seu artigo.
Boa noite Matheus!
Uma coisa importante sobre o TDD é que você deve focar apenas nas tarefas inerentes a cada fase, por exemplo, se você está escrevendo os testes, você não deve refatorar ou alterar os códigos das classes e deve escrever um teste por vez, o mesmo serve para a fase de refatoração, você deve apenas focar em melhorar o código da classe ou dos testes mas sem alterar os resultados delas, na de desenvolvimento você não deve alterar o teste e deve focar apenas em fazer o teste passar da forma mais simples possível.