One of the most popular testing practice in the IT industry. Almost every software test engineer has to work on this testing type once in his / her IT career.
What is Regression Testing?
It is the process of testing where we make sure that any new feature or change request or defect fixing has not created any adverse impact on existing working system. It is nothing but executing all or highly critical test cases on the module to make sure that everything is working as per expectation. It is part of the verification process and helps to know that changes or defect fixing has not created any unwanted issues.
When do we Regression Testing?
When any new build is developed with the new feature or previous version defects fixing, that build need to go to the tester for verification. Although testing only new feature for its functionality or retesting only defect will not help. Here testers need to make sure previously working functionality is not impacted by a new feature. For verification, some time tester uses previously executed test cases. A selection of test cases depends upon the available time limit, budget and resource availability. Sometimes we select all test cases for regression testing or sometimes we select test cases from highly impacted areas. Also, it is advisable to include regression testing in all type of release, either small or big release.
Following are the few scenario when you need to perform Regression Testing.
- New features introduction in existing system.
- Changes in existing module.
- Changes in IT infrastructure.
- Defect Fixing.
How much Regression Testing Required?
It is the question every organization asks testing team during every release, it becomes quite important to understand the scope of changes and its impact. It is always fine to execute all the test cases developed for the system after many changes, but due to time constraint we need to find out the way to select important test cases. The effectiveness of regression test suite depends upon the way you have understood the scope its impact and required test cases to test those modules.
Following are few ideas based on which you can select the test cases for regression test suite.
- Test cases which have identified many defects
- Features which is more visible to user
- Test cases from the module which is the basic functionality of the system.
- Module which is undergone recent changes.
- Test Cases which test the integration of module