Testes: Unitários, Integração e E2E
Seu código tem 0 testes. Mudou uma linha e quebrou tudo. Você gasta 2 dias debugando.
Com testes, demora 30 segundos pra saber que quebrou.
Pirâmide de Testes
Base (70%): Testes Unitários
Testam 1 função isoladamente. Rápido (ms). Fácil de escrever.
def test_calcular_imposto():
resultado = calcular_imposto(100)
assert resultado == 15Meio (20%): Testes Integração
Testam 2+ componentes junto. Envolve banco, API, etc. Mais lento (segundos).
Topo (10%): Testes E2E
Testam fluxo inteiro. Abrem navegador, fazem login, clicam, verificam resultado. Lentos (minutos).
Prática Recomendada
Write tests primeiro (TDD). Escreva teste que FALHA. Depois escreva código que PASSA. Depois refatore.
Ganho
Confiança em deploy. Refactor seguro. Bugs detectados antes de produção = menor custo.
← Back to blog