Glossary · Automation software engineering and architecture
Regression test
Also known as: Regression testing
German: Regressionstest
In software testing, a regression test is a repeated test of previously working functionality after a change, to detect whether the change has introduced new defects in unchanged areas.
- Software engineering
In one sentence
A regression test re-checks previously working functions after a change to detect defects the change introduced elsewhere.
Example
After a fix in the alarm handling, the automated regression test suite runs 400 test cases on the virtual machine model before the new PLC version is released.
How it applies
- Engineering: Regression suites are automated and run in the Test pipeline on every change. Selecting a subset based on Impact analysis is common when the full suite takes too long.
- Change control: For modified safety-related or validated systems, the scope of regression testing must be justified from the impact analysis and recorded.
- Documentation: Documentation has its own regressions: broken links, outdated screenshots, lost conditional content. Automated checks in the documentation build act as regression tests, and the procedures in the manual can be reused as manual regression test scripts.
Regression test vs. retest
A retest (confirmation test) checks that a specific defect is fixed. A regression test checks that the fix, or any change, did not break something else.