What is Regression Testing?
The idea behind regression testing is simple. We know that changes to an existing system often cause other things to break. To detect when this happens, we keep a set of tests (the Regression Test Set, or the RTS for short) containing tests of important things that used to work okay. We run the RTS after each set of changes to make sure that these things still work. That’s it. The problem is to do regression testing correctly, so that it solves more problems than it creates.
The objective of regression testing is to ensure the software remains intact. A baseline set of data and scripts is maintained and executed to verify changes introduced during the release have not “undone” any previous code. Expected results from the baseline are compared to results of the software under test. All discrepancies are highlighted and accounted for, before testing proceeds to the next level.