Vibecoding
Por que você precisa de teste mesmo indo rápido
Teste parece que atrasa. Ele acelera. O que atrasa é debugar em produção com cliente reclamando.
"Não tenho tempo pra teste, preciso entregar rápido." Essa frase é a mais cara do desenvolvimento. Porque ela mente sobre onde o tempo vai.
Você economiza 10 minutos não escrevendo o teste. Depois perde 3 horas caçando um bug que o teste teria pego na hora. Isso não é ir rápido. É ir rápido pra trás.
Meu take: teste não é o que te atrasa. É o que te deixa acelerar sem medo. Quem vai rápido de verdade tem rede embaixo.
O que teste realmente compra
Teste não é sobre "código certo". É sobre três liberdades:
- Liberdade de mudar. Você mexe numa parte e o teste avisa se quebrou outra. Sem isso, toda mudança é aposta.
- Liberdade de confiar na IA. Ela reescreve, o teste confirma que ainda funciona. Sem teste, você aceita cego.
- Liberdade de dormir. Subiu pra produção com os testes passando. Você descansa.
Quem não tem teste não tem essas liberdades. Tem medo. E medo desacelera muito mais que qualquer teste.
O custo de não testar aparece depois
O bug tem um preço que cresce com o tempo:
- Pego no teste: 2 minutos.
- Pego em desenvolvimento: 20 minutos.
- Pego em produção pelo cliente: horas, mais a confiança perdida.
Pular o teste é empurrar o custo pra frente com juros. Você não eliminou o trabalho. Adiou e encareceu.
Não precisa testar tudo
Aqui é onde a maioria trava. Acha que teste é oito horas cobrindo cada linha. Não é.
Teste o que quebra caro:
- Pagamento. Se erra, some dinheiro.
- Login e permissão. Se erra, vaza dado.
- Cálculo e regra de negócio. Se erra, mostra número errado pro cliente.
O botão que muda a cor do tema? Deixa pra depois. Foque no que dói se falhar.
Como é um teste simples
Não é bicho de sete cabeças. É você descrevendo o que espera:
test("aplica 10 por cento de desconto", () => {
expect(calcularTotal(100, 0.1)).toBe(90)
})
Rodou, passou, verde. Você mexe no cálculo semana que vem, roda de novo, e ele grita se você quebrou. Essa é a rede.
Comece pelos casos de borda
O caminho feliz quase sempre funciona. O bug mora nos extremos:
- E se o valor for zero?
- E se for negativo?
- E se vier vazio ou nulo?
- E se for gigante?
Teste esses. É onde o código real quebra. O input que você não imaginou é o que o usuário vai digitar.
A IA ajuda, você revisa
Peça pra IA gerar os testes, principalmente os casos de borda que você esqueceria. Ela é boa nisso. Mas leia: confira se o teste checa a coisa certa. Teste que passa testando nada é pior que teste nenhum, porque dá falsa segurança.
Vibecoding com engenharia é entender que velocidade sem rede é queda esperando pra acontecer. Teste não é freio. É cinto de segurança. Ele não te deixa mais lento. Deixa você poder acelerar.
A decisão é sua.
Perguntas frequentes
Perguntas rápidas
+Teste nao atrasa o desenvolvimento?
Atrasa a primeira entrega em minutos. Economiza horas de debug depois. O saldo e sempre positivo.
+Preciso testar tudo?
Nao. Teste o que quebra caro: pagamento, login, calculo, regra de negocio. O resto pode esperar.
+A IA pode escrever os testes?
Pode, e ajuda muito nos casos de borda. Mas voce revisa se o teste esta checando a coisa certa.
Continue lendo
Como não virar refém de uma ferramenta de IA
A ferramenta que você ama hoje pode dobrar de preço, mudar de dono ou fechar amanhã. Não construa em cima de uma só.
VibecodingO que fazer quando a IA te dá código que você não entende
A tentação é apertar aceitar e seguir. Não faça. Código que você não entende é código que você não mantém.
VibecodingPor que backup não é opcional
Existe quem faz backup e quem ainda não perdeu tudo. Você escolhe de qual lado ficar antes ou depois.