Difference between Regression Testing vs Retesting?

Next commonly ask interview question in any software testing interview is “What is difference between Regression Testing and Retesting?” Regression testing and Retesting have different objectives and priorities, they equally important for project’s success.

 

Definition of Retesting and Regression Testing:

Re-Testing: After a defect is detected and fixed, the software should be retested to confirm that the original defect has been successfully removed. This is called Confirmation Testing or Re-Testing

Regression testing:  Testing your software application when it undergoes a code change to ensure that the new code has not affected other parts of the software.

 

Difference between Retesting and Regression Testing

 

Let’s quickly start with actual difference between Regression Testing and Retesting.

 

Regression Testing

Retesting

Regression testing is a type of software testing that intends to ensure that changes like defect fixes or enhancements to the module or application have not affecting unchanged part. Retesting is done to make sure that the tests cases which failed in last execution are passing after the defects against those failures are fixed.
Regression testing is not carried out on specific defect fixes. It is planned as specific area or full regression testing. Retesting is carried out based on the defect fixes.
In Regression testing, you can include the test cases which passed earlier. We can say that check the functionality which was working earlier. In Retesting, you can include the test cases which failed earlier. We can say that check the functionality which was failed in earlier build.
Regression test cases we use are derived from the functional specification, the user manuals, user tutorials, and defect reports in relation to corrected problems. Test cases for Retesting cannot be prepared before start testing. In Retesting only re-execute the test cases failed in the prior execution.
Automation is the key for regression testing.
Manual regression testing tends to get more expensive with each new release.
Regression testing is right time to start automating test cases.
You cannot automate the test cases for Retesting.
Defect verification is not comes under Regression testing. Defect verification is comes under Retesting.
Based on the availability of resources the Regression testing can be carried out parallel with Retesting. Priority of Retesting over Regression testing is higher, so it is carried out before regression testing.

 

In the Regression Testing test cases are extracted from functional test cases to ensure that no new defects should be included & check whether original features and functionality is working as expected and make sure no new defect has been introduced. Once the regression test suite is created you can automate test cases using automation tool but same is not applicable for Retesting.

Conclusion

The defect logged by tester while testing application and same fixed by developer. In Retesting we check same defect whether fixed or not using steps to reproduce mentioned in the defect. In Regression testing we check same defect fixes are not impacted other unchanged part of the application, not breaking the functionality working previously and break due to fixing defect.

If you like this article, consider subscribing to get all Testing Updates in your Inbox for FREE. To get testing tips Click Here.

8 thoughts on “Difference between Regression Testing vs Retesting?”

  1. retesting is a after getting the information tester to tester fixed defects from the developer said its called a retesting this is right or wrong

    Reply
  2. @Mahesh: Retesting is executing a previously failed test against new software to check if the problem is resolved. After a defect has been fixed, retesting is performed to check the scenario under the same environmental conditions.

    Reply
  3. @Suchita: without performing retesting, there is no point in doing regression. Only after a retesting, you can confirm that the defect is fixed and then you can concentrate on the regression.

    Reply
  4. i have 1000 testcases to run to test the features of any application, in which 200 test cases got fail. i got fixes for failed test cases. what testing(i.e. Retesting or regression),should i have to performed to test the whole application. When i have limited time to test the application.

    Reply
  5. @Pushpendra: You should start with Re-Test for that 200 cases and after that you can start the Regression Test.
    Thanks
    -Chaitanya

    Reply

Leave a Comment

Share This Post