Regression Testing a testing which has lot of significance in ensuring that the application is working well even after a code change or enhancements. Generally this type of testing plays its role after the functional testing is done. Its more likely done when after a patch for a code is fixed. Regression Testing is done to ensure the application as whole is working fine.
Regression is an act or an instance of going back to an earlier and lower level especially of intelligence or behavior the regression to really childish behavior that boys often undergo when put in large groups.
So here in Software Testing, Regression Testing is a Verification Process where we go back to the Software Application that has been changed by the act of a patch or fix due to its already existing program which put together should make the application work properly as it was functioning before.
Guru99.com defines Regression Testing as
"Regression Testing is defined as a type of software testing to confirm that a recent program or code change has not adversely affected existing features."
ISQTB Defines as :
When any modification or changes are done to the application or even when any small change is done to the code then it can bring unexpected issues. Along with the new changes it becomes very important to test whether the existing functionality is intact or not. This can be achieved by doing the regression testing.
Difference between Regression and Re-Testing
There is a difference between Re-Testing and Regression Testing. Though both has a common approach verifying the application after a fix in a code is done.
|REG vs ReT|
While Re-Testing tests the functionality to ensure that the code is fixed and no bug is comes back. If the Code works well then it is closed else if the defect raises its opened again. Here we focus more on the Failed Test Cases.
But in Regression testing, verifying your software application when the code is changed and ensuring that the this code is not affecting the application as whole . Here we focus more on the application as a whole whether the new code is not affecting the other areas of the software.
Regression Testing is useful when
|Regression Testing Useful Areas|
- Code is modified due to change in requirement
- Any New Feature is added to the Application
- Any Performance issue and there is a fix for it
- Resolving Bugs and Defects Raised to ensure a quality software delivery.
Regression Testing is a very effective strategy which actually helps big organisation save lot on time and money. As bug fixes cost a lot and an effective Regression will help companies in reducing this cost and produce a quality product.