Retesting and Regression Testing

 Retesting & Regression Testing


RETESTING

Definition

Retesting is the process of testing the application again to verify that a specific defect (bug) has been fixed successfully.

 It focuses only on the failed test cases.

 What is Retesting?

Retesting means re-running the same test cases that previously failed to confirm that the bug is fixed.

Why Retesting is done

  • To confirm bug is fixed

  • To ensure issue no longer exists

  • To validate defect resolution

  • To give confidence to client/team

 When Retesting is done

✔️ After developer fixes the reported bug
✔️ After receiving updated build
✔️ During defect verification phase

 How Retesting is performed

  1. Identify failed test case

  2. Developer fixes bug

  3. Tester re-runs the same test case

  4. Verify expected result

  5. Mark bug as closed if pass

 Where Retesting is used

  • Bug fixing cycle

  • Defect management process

  • Agile sprint testing

  • Maintenance phase

 Example of Retesting

Bug: “Login fails with valid credentials”

Steps:

  • Enter correct username & password

  • Previously: login failed ❌

  • After fix: login works ✅

 Tester repeats same test case to confirm fix.

REGRESSION TESTING

 Definition

Regression Testing is the process of testing the existing functionality of the application to ensure that new changes or bug fixes have not affected the previously working features.**

 It checks overall system stability after changes.

 What is Regression Testing?

Regression testing means re-testing the entire or major part of the application after code changes.

 Why Regression Testing is done

  • To ensure new changes didn’t break old features

  • To maintain software stability

  • To detect side-effects of fixes

  • To verify system works as before

When Regression Testing is done 

After new feature is added  After Bug fixex , After code modification, Before release

 How Regression Testing is performed

  1. Select regression test cases

  2. Execute previously passed test cases

  3. Verify old features still work

  4. Report if any functionality breaks

 Where Regression Testing is used

  • Large applications

  • Frequent code changes

  • Continuous integration environments

  • Agile and DevOps projects

Example of Regression Testing

Suppose a bug in payment module is fixed.

Now tester checks:

  • Login works?

  • Add to cart works?

  • Checkout works?

  • Order history visible?

Even though bug was only in payment, other modules are tested to ensure nothing broke.

 Difference Between Retesting & Regression Testing

BasisRetestingRegression Testing
DefinitionVerify specific bug fixVerify old features after changes
ScopeNarrow (only failed cases)Wide (entire application)
PurposeConfirm defect is fixedEnsure stability of system
Test CasesRe-run failed casesRe-run passed test cases
WhenAfter bug fixAfter change or new feature
ExampleCheck fixed login bugCheck login, cart, payment all work

 Easy Memory Trick

  • Retesting = “Bug Fixed?”

  • Regression = “Anything Broken?”


 Conclusion 

Retesting verifies that a specific defect has been fixed successfully, while Regression Testing ensures that new changes or bug fixes have not affected the existing functionality of the application.

Comments

Popular posts from this blog

Software Testing Module 2

Assignment 1

Assignment 3