🔁 Regression Testing vs Retesting – What’s the Difference?
🔹 What is Regression Testing?
Definition: Regression testing is performed to verify that existing functionality still works after changes like bug fixes, enhancements, or code updates.
Purpose: To ensure that new code changes have not unintentionally broken existing features.
Example: A bug in the login module is fixed. After the fix, regression testing will check login, signup, and dashboard access—all related modules—to confirm that nothing else is broken.
🔹 What is Retesting?
Definition: Retesting is performed to verify that a specific bug fix works correctly using the same test case that initially failed.
Purpose: To confirm that the reported defect has been successfully fixed.
Example: If the "Submit" button didn’t work during the last test cycle and a fix was made, retesting involves checking that exact scenario again to verify that the bug is resolved.
🆚 Key Differences Between Regression Testing and Retesting
Criteria | Regression Testing | Retesting |
---|---|---|
Definition | Testing to confirm that new changes haven’t broken existing features | Testing to confirm a specific bug has been fixed |
Test Case Used | Reusable old test cases | Same test case that failed earlier |
Scope | Broad – covers multiple related modules | Narrow – focuses only on the fixed defect |
Execution | Can be automated | Usually manual (critical checks) |
Priority | After every build or code change | After a particular defect is fixed |
Objective | Find side effects of changes | Verify that the fix works correctly |
Dependency | Can be performed even if no bugs are found | Performed only when a bug is reported and fixed |
🧪 Real-World Example
Scenario: A defect was found where the "Change Password" button was not working.
- Retesting: Check only the "Change Password" feature to verify the bug is fixed.
- Regression Testing: Check "Change Password", "Update Profile", "Login", "Logout"—all related user settings to ensure nothing else broke due to the fix.
✅ When to Use
Situation | Use |
---|---|
You fixed a known bug | ✅ Retesting |
You added a new feature or updated the codebase | ✅ Regression Testing |
Before a release or sprint demo | ✅ Regression Testing |
Verifying if a previously failed test now passes | ✅ Retesting |
📌 Conclusion
Retesting is about checking the fix.
Regression Testing is about checking the impact of the fix.
Both are essential for quality assurance. Retesting ensures bugs are fixed; regression ensures new bugs aren’t introduced.
👋 Hi, I'm Suriya — QA Engineer with 4+ years of experience in manual, API & automation testing.
📬 Contact Me | LinkedIn | GitHub
📌 Follow for: Real-Time Test Cases, Bug Reports, Selenium Frameworks.
No comments:
Post a Comment