What is Regression testing?
The Regression is performed to make sure that the modification made in the code does not impact the existing functionality of the application. That means no new bugs are introduced because of these changes. In this previously executed test case also again executed in order to verify the impact of modifications/changes. This regression testing is performed on a new build when there is any significant change in the original functionality. Why regression testing is important ? because the application contains many modules and those models are dependent then this regression testing is very important. For example Gmail. Gmail contains compose, inbox, sent, drafts, trash and so on. Here the compose module and sent module are interlinked which means whatever mail that sent will reflect in the sent module. For example, if the client needs some new features in the compose module and the development for that module is done. If the testers do not perform regression testing and deliver the application. Then what will happen? The important emails that were sent by the user will not present in the sent module then there is no proof from the sender side. This has a very high priority. If the new features are developed in help modules that do not much affect any other module So regression testing plays a crucial role. When there is any continuous change in the application this test is very important.
Types of Regression testing
There are 3 different types of Regression testing. They are mentioned below.
- Unit Regression Testing.
- Partial Regression Testing.
- Complete Regression Testing.
1. Unit Regression Testing
During the unit testing phase, Unit Regression is done and the code is tested in separation so that if there are any dependencies on the unit to be tested are blocked so that the unit can be tested individually without any inconsistency.
2. Partial Regression Testing
Partial Regression testing is performed to make sure that even when the changes/modifications have been done in the code that does not affect the (unit )code for that module. And that very unit is integrated with the unchanged or already existing code.
3. Complete Regression Testing
When there are changes in every module and also the changes affect other modifications in other modules unknowingly.Then complete regression testing is done.
When to perform Regression testing
Usually, Regression testing is performed after verification of modifications or new functionality. Sometimes it is not the scenario. Regression tests must be incorporated in the daily test cycle for the release that is taking months to complete. If the scenario is weekly release then regression tests can be performed when the Functional Testing is over for the changes. Regression testing is nothing but retesting. That means repeating the test that was performed before. Regression testing is done not regularly only for the special occasions that mean something has changed in the application or code.