Regressietesten

Testen van een eerder geteste component of systeem na een wijziging om ervoor te zorgen dat fouten (defecten) niet zijn geïntroduceerd of zijn geopenbaard in ongewijzigde delen van de software, als gevolg van de aangebrachte wijzigingen.

Present in sylabi

Foundation 2018 Foundation Extension - Performance Testing 2018 Foundation Extension - Gambling Industry Tester 2018

Voorbeeld

Nadat een team een fix voor een defect in de betalingsberekening heeft uitgebracht, voeren ze de tests opnieuw uit die eerder faalden (dat is hertesten) en draaien ze vervolgens de volledige regressiesuite voor de rest van het afrekenproces. Regressietesten controleert dat ongewijzigde gebieden — zoals de kortingslogica en de berekening van verzendkosten — zich na de wijziging nog steeds correct gedragen. Bij continue integratie draaien regressietests doorgaans automatisch bij elke codewijziging.

Veelgestelde vragen

Wat is het verschil tussen regressietesten en hertesten? Bij hertesten worden de specifieke testgevallen uitgevoerd die de vorige keer faalden, om te controleren dat de fix heeft gewerkt. Regressietesten voert tests uit op eerder geteste, ongewijzigde functionaliteit om ervoor te zorgen dat de wijziging geen nieuwe defecten heeft geïntroduceerd. Na een fix zijn beide nodig.

Wanneer wordt regressietesten uitgevoerd? Telkens wanneer de software of de omgeving verandert: nieuwe functies, bugfixes, configuratiewijzigingen of infrastructuurupdates. Hoe groter de wijziging, hoe belangrijker de regressiedekking.

Hoeveel regressietesten is genoeg? Genoeg om het risico van de wijziging te dekken. Teams beginnen vaak met een rooktest over de kritieke paden en breiden daarna uit op basis van de impact van de wijziging en de beschikbare testautomatisering.

Is regressietesten een testniveau? Het is een testtype, geen niveau — regressietests kunnen op elk niveau draaien, van componenttesten tot systeemtesten, en komen vaak in meerdere fasen voor.

Verwante termen

  • hertesten — het opnieuw uitvoeren van eerder gefaalde tests om een fix te controleren
  • bevestigingstesten — controleren dat een defect daadwerkelijk is verholpen
  • integratietesten — het testen van interfaces tussen geïntegreerde componenten
  • systeemtesten — het testen van het complete geïntegreerde systeem
  • testautomatisering — het gebruik van software om tests uit te voeren, waardoor frequente regressieruns mogelijk worden
  • defect — het gebrek dat een regressiesuite is ontworpen om op te sporen

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