Definição
Regressão é o defeito pelo qual uma funcionalidade que funcionava deixa de funcionar após uma mudança. O comportamento anterior era o esperado, e a alteração quebrou esse funcionamento. A regressão pode aparecer no mesmo ponto alterado ou em outro trecho que dependia dele.
Localizar o que mudou
A investigação parte de uma comparação: qual comportamento operava antes e qual falha agora. O histórico de commits ajuda a localizar as mudanças recentes, e o diff mostra o que cada uma alterou. A partir daí, é possível relacionar a falha às alterações candidatas e reavaliar os cenários afetados.
Regressão e defeito novo
Regressão é a perda de um comportamento que funcionava. Nem todo defeito recém-descoberto é uma regressão, porque o problema pode ter existido desde o início e só agora ter sido notado. A diferença está no histórico: a regressão compara o antes e o depois.
O teste que pega a regressão
No exemplo da edição de clientes, o comportamento quebrado só apareceu depois da publicação. Sem um teste que descreva aquele fluxo, a regressão passa despercebida até você encontrar o comportamento quebrado no uso do sistema. A verificação roda, a cada mudança, os testes que cobrem os comportamentos que já existiam. Quando um desses testes passa a falhar, a regressão está localizada no momento da mudança, e o diff indica onde a quebra entrou.
Veja como os testes sinalizam regressões: o teste unitárioDúvidas frequentes
Perguntas frequentes sobre Regressão
- O que caracteriza uma regressão?
- Um comportamento que funcionava deixa de funcionar depois de uma mudança, no mesmo ponto alterado ou em outro trecho que dependia dele.
- Todo defeito recém-descoberto é regressão?
- Não. O problema pode ter existido desde o início e só ter sido notado agora. A regressão compara o comportamento antes e depois.
- Como evitar regressões?
- Com testes que descrevem o comportamento esperado e rodam a cada mudança, sinalizando a quebra assim que ela aparece.
Para continuar
Recursos relacionados
Artigo
Martin Fowler: RegressionTest
Explica o papel do teste de regressão na detecção de quebras de comportamento.
Abrir recursoSite de referência
Wikipedia: Software regression
Apresenta o conceito de regressão de software e formas de detecção.
Abrir recursoAplicação na formação
Vibe Coding: Do Zero ao MVP
Na Formação Vibe Coding, a regressão é tratada com testes que descrevem o comportamento esperado e sinalizam quando uma mudança quebra o que já funcionava.
Conhecer a formaçãoFontes consultadas
Referências deste verbete
Este verbete ajudou você?
Obrigado pela resposta. Ela fica salva apenas neste navegador.