Regresní Testování

Typ testování související se změnami, jehož cílem je zjištění, zda nedošlo na nezměněných částech softwaru k výskytu nových nebo dříve neodhalených (skrytých) defektů.

Present in sylabi

Příklad použití

Poté, co tým vydá opravu defektu ve výpočtu plateb, znovu spustí testy, které dříve selhaly (to je přetestování), a poté spustí kompletní regresní sadu pokrývající zbytek procesu dokončení objednávky (checkout). Regresní testování ověřuje, že nezměněné oblasti — například logika slev a výpočet nákladů na dopravu — se po provedené změně stále chovají správně. V kontinuální integraci se regresní testy obvykle spouštějí automaticky při každé změně kódu.

Časté dotazy

Jaký je rozdíl mezi regresním testováním a přetestováním? Přetestování spouští konkrétní testovací případy, které naposledy selhaly, aby ověřilo, že oprava funguje. Regresní testování spouští testy na dříve testované, nezměněné funkcionalitě, aby zajistilo, že změna nezavedla nové defekty. Po opravě jsou potřeba oba přístupy.

Kdy se provádí regresní testování? Kdykoli se změní software nebo jeho prostředí: nové funkce, opravy chyb, změny konfigurace nebo aktualizace infrastruktury. Čím větší změna, tím důležitější je regresní pokrytí.

Kolik regresního testování je dost? Dost na to, aby pokrylo riziko změny. Týmy často začínají průchodem smoke testů přes kritické cesty a poté rozšiřují rozsah na základě dopadu změny a dostupné automatizace testů.

Je regresní testování úroveň testování? Je to typ testu, nikoli úroveň — regresní testy lze provádět na jakékoli úrovni, od testování komponent po systémové testování, a často se vyskytují ve více fázích.

Související pojmy

  • přetestování — opětovné spuštění dříve neúspěšných testů pro ověření opravy
  • potvrzovací testování — ověření, že je defekt skutečně opraven
  • integrační testování — testování rozhraní mezi integrovanými komponentami
  • systémové testování — testování kompletního integrovaného systému
  • automatizace testů — použití softwaru k provádění testů, umožňující časté regresní běhy
  • defekt — vada, kterou má regresní sada odhalit

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