Teste De Regressão

Tipo de teste relacionado com alterações para detetar se foram introduzidos ou descobertos defeitos em áreas inalteradas do software.

Present in sylabi

Exemplo de utilização

Depois de uma equipa publicar uma correção para um defeito no cálculo do pagamento, volta a executar os testes que falharam anteriormente (isto é reteste) e executa depois a suíte de regressão completa que cobre o resto do fluxo de finalização da compra. O teste de regressão verifica que as áreas inalteradas — como a lógica de descontos e o cálculo dos custos de envio — continuam a comportar-se corretamente após a modificação. Em integração contínua, os testes de regressão são normalmente executados automaticamente em cada alteração de código.

Perguntas frequentes

Qual é a diferença entre teste de regressão e reteste? O reteste executa os casos de teste específicos que falharam da última vez para verificar se a correção funcionou. O teste de regressão executa testes sobre funcionalidade já testada e inalterada para garantir que a alteração não introduziu novos defeitos. Ambos são necessários após uma correção.

Quando é realizado o teste de regressão? Sempre que o software ou o seu ambiente muda: novas funcionalidades, correções de bugs, alterações de configuração ou atualizações de infraestrutura. Quanto maior a alteração, mais importante é a cobertura de regressão.

Quanto teste de regressão é suficiente? O suficiente para cobrir o risco da alteração. As equipas começam frequentemente com uma passagem de teste de fumo sobre os caminhos críticos e depois expandem com base no impacto da alteração e na automação de testes disponível.

O teste de regressão é um nível de teste? É um tipo de teste, não um nível — os testes de regressão podem ser executados em qualquer nível, do teste de componentes ao teste de sistema, e aparecem frequentemente em várias fases.

Termos relacionados

  • reteste — voltar a executar testes que falharam anteriormente para verificar uma correção
  • teste de confirmação — verificar que um defeito está efetivamente corrigido
  • teste de integração — testar as interfaces entre componentes integrados
  • teste de sistema — testar o sistema integrado completo
  • automação de testes — utilizar software para executar testes, permitindo execuções de regressão frequentes
  • defeito — a falha que a suíte de regressão é concebida para detetar

Learn more

A systematic review on regression test selection techniques by Emelie Engström, Per Runeson, Mats Skoglund in Information and Software Technology, Elsevier (2010) - 449+ citations
Comprehensive systematic review of regression test selection techniques with qualitative analysis and empirical evaluations

An empirical study of regression test selection techniques by Todd L. Graves, Mary Jean Harrold, Jung-Min Kim, Adam Porter, Gregg Rothermel in ACM Transactions on Software Engineering and Methodology (TOSEM) (2001) - 663+ citations
Controlled experiment examining costs and benefits of five regression test selection techniques with empirical data on trade-offs

A study of effective regression testing in practice by W. Eric Wong, Joseph R. Horgan, Saul London, Hiralal Agrawal in Proceedings of the Eighth International Symposium on Software Reliability Engineering (ISSRE) (1997) - 701+ citations
Highly influential early work establishing practical foundations for regression testing ensuring changes don't affect unchanged features

Regression Testing: The Ultimate Guide (March 2025)
Comprehensive guide covering regression testing basics, 8-step process, do's and don'ts, challenges, manual vs automated testing, and strategy design

Recommend more content related to this term