Regression testing vs Retesting

Being a QA(Quality Analyst) most of the time we come across two terms regression testing and retesting, and many wannabe software testers get confused with these two terms and face difficulty to understand the difference between these two. Both of these are a type of software testing. In this blog, we are going to understand the basic difference between these two types of testing.

What is Regression testing?

The process of testing the functionality of existing modules after code change or the introduction of a new module is called regression testing. In simple language we can say whenever a new module is added to a build product there is a chance of introduction of bugs in the older modules, to ensure that addition of new module is not affecting the other module functionality we perform regression testing. Let’s try to get understand regression testing with the help of an example

Regression testing

As we can see in the above diagram there are two existing modules and one is added as a new module which is defined as A and B are existing module and C is newly added module, So we will execute the test cases related to module A and B to ensure that the addition of C module does not affect the core functionality of A and B module. This process of executing the test cases is termed as regression testing.

What is Retesting?

The process of testing the fixed bug to verify that the bug is not reproducible is called retesting, Let’s try to get understand Regression testing with the help of an example

Retesting

In the above diagram, we have 2 modules A and B and we had found a bug in B module which has been fixed now, We will execute the test case in which we have steps to reproduce the bug in module B, this process of verification that bug is not reproducible in module B is termed as retesting.

Difference Between Regression Testing And Retesting

Regression TestingRetesting
The process of testing the functionality of existing modules after code change or the introduction of a new module is called regression testing.The process of testing the fixed bug to verify that the bug is not reproducible is called retesting.
The basic purpose of regression testing is to ensure that new code change does not affect the existing functionality.Retesting is done on the basis of Bug fixes.
Regression testing is performed for the passed test cases.Retesting is performed for failed test cases.
Regression test case can be automated as we execute existing test cases only.Retesting test cases cannot be automated as we execute the test case based on the new bug traced.
Regression testing almost cover the whole functionality of the softwareRetesting is performed for specific functionality.
Regression testing is also known as Generic testingRetesting is also called planned testing

Please tell us about your regression testing vs retesting knowledge before-and-after reading. I bet you’ll have something to say!!!

Happy learning 🙂

Leave a Reply