The goal of regression testing is to make sure that the application works after code modification or correction. The main characteristic of such tests/test is repeatability.
What do we get out of regression tests? They help us discover:
- bugs/error that were caused by recent changes.
- bugs that we may have missed.
All of this makes them a good candidate for automation – due to their repeatability. Want to learn more about automation, check out selenium tutorials.
In project, where new features are added relatively quickly in short cycles, regression tests make it possible to ensure that new functionality do not negatively affect already existing parts of the system.
In is import to understand that regression tests don’t necessarily have to be carried out for the whole application, they can also done on the part of the project.
Full regression testing costs time and money and sometimes cannot be performed between test cycles. We should then select test based on:
- What errors have been corrected?
- What extensions or changes have been introduced?
- Which areas of the application these changes effect?
- What is the impact of the changes made on other parts of the system.
Regression test should be carried out after smoke tests or sanity tests. These type of tests allow us to make sure that the new version of the application is testable and whether it is worth continuing further work.
You can look up our post about testing standards if you would like to learn more.