A Importância da Cobertura de Código: Devo buscar 100% ?
Alberto Luiz Souza
Posted on July 8, 2024
Disclaimer
Este texto foi concebido pela IA Generativa em função da transcrição do episódio do nosso canal, Dev Eficiente. O episódio completo pode ser visto no canal.
Resumo
No texto de hoje, quero falar com você sobre um tema crucial para a qualidade do software: a cobertura de testes. Devo buscar ou não devo buscar 100% de cobertura de testes? Vamos explorar essa questão juntos.
A Evolução do Pensamento sobre Cobertura de Testes
No passado, eu acreditava que buscar 100% de cobertura de testes era um erro. Eu dizia que testar tudo era inútil e que você estava desperdiçando tempo. No entanto, com o tempo, estudos e através de conversas com especialistas como Maurício Aniche, meu entendimento sobre o papel dos testes automatizados mudou. Hoje, acredito que se você não está buscando 100% de cobertura, está possivelmente fazendo errado.
A Realidade dos Testes
Quando falamos de cobertura de testes, não estamos dizendo que você deve testar cada linha de código de forma isolada. A ideia é que, ao escrever testes para os códigos que realmente importam, você acaba tocando nos outros códigos de produção que não precisam de testes diretos. Isso significa que, ao testar de forma mais integrada, você cobre uma maior parte do seu código de maneira eficiente.
Como eu lido com a Pirâmide de Testes
A famosa pirâmide de testes sugere que devemos ter uma base sólida de testes de unidade, seguidos por testes de integração e, testes end-to-end e, por fim, testes manuais.
Não é como tenho atualmente. Minha abordagem atual é testar o mais próximo possível da realidade. Se eu conseguir testar tudo de forma rápida e integrada, farei isso. Claro, a velocidade é uma restrição, e nem sempre é viável subir todos os sistemas para executar testes integrados o tempo todo.
A Busca pela Cobertura Ideal
Meu objetivo é exercitar o código da maneira mais integrada possível. Supondo que todo código escrito para produção é necessário, espero tocar em 100% do código.
Pensando em projeto green field, espero sempre 90%+ de cobertura. Afinal de contas a lógica básica é: Se eu testo mais, aumento a confiabilidade.
A cobertura de testes é uma via para aumentar a confiabilidade do software, minimizando bugs e problemas em produção.
Conclusão
A busca por 100% de cobertura de testes, maximizando integração, é uma meta ambiciosa, mas que traz inúmeros benefícios. Ela aumenta as chances do código ser exercitado de maneira integrada, revelando problemas o mais cedo possível.
Espero que este post tenha sido útil para você. Deixe seu comentário, seja ele positivo ou construtivo. Terei o maior prazer em responder. Até a próxima!
Sobre a Jornada Dev + Eficiente
Se você quer se aprofundar mais nas práticas de qualidade de código e se tornar um profissional reconhecido tecnicamente, convido você a conhecer a Jornada Dev + Eficiente.
Posted on July 8, 2024
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.