
We want our regression analysis to achieve the highest possible test coverage and be largely automated. Reality often looks quite different: thousands of manual test cases in the regression set, and you're certain that at least 25% of them are unnecessary – but which ones? Why have so many tests accumulated? Using a practical example, we'd like to illustrate which test cases belong in a regression analysis and which don't. Correct selection is a key element for a clean, effective regression set.
This practical example is also suitable for training specialists who have had little contact with testing.
A company has launched a digitization project. The goal is to create an app for customers that can perform the following tasks:
The following details should also be noted:
The first two test levels, unit tests and integration tests, are usually performed by developers or technical testers. These tests assess the functionality of individual modules and the interaction of interdependent components. System tests, on the other hand, verify compliance with the specifications while the entire system is available. It is crucial that system tests have high test coverage to identify software errors before deployment to production. Short system tests are advantageous for easier identification and localization of potential errors. The following system tests would be suitable for the specification mentioned above:
After the software goes live, the system tests are converted into regression tests. The number of test cases for regression is to be significantly reduced. The goal of regression is to identify undesirable side effects of software changes. It is not about retesting the entire specification/software. This also applies if test automation is planned, because even automated tests require regular maintenance and are therefore not "free" to execute. The regression tests focus on the essentials. Combining several system tests can also be advantageous to save execution time. The error density in regression tests is usually much lower than in system tests. We have selected the most important system tests and combined them where appropriate. This results in the following regression set:
What happens if the app is further developed in a future release? The regression set requires regular maintenance. We assume the specification will be extended to include the following point:
This results in several additional system tests, which we will not list here. Instead of increasing the regression set after the release, the existing test set can be adapted to also include the future address check:
It is also possible that test cases can be deleted from the regression set after a software change if they are no longer relevant due to the software change (example: if address changes are only possible via app, there is no longer a need for tests to test this via website).
What does your regression set look like? If you would like a consultation, please feel free to us .
Would you like to utilize our expertise and implement technological innovations?


Do you have a question or are you looking for more information? Provide your contact information and we will call you back.