Skip to content
All notes
17FundamentalsTesting TypesFundamentals

What is the difference between Retesting and Regression Testing?

Retesting:

  • Purpose: Verify that a specific defect has been fixed
  • Scope: Only the failed test case
  • When: After developer fixes a bug
  • Test Cases: Same test case that found the bug
  • Automation: Can be automated but usually manual
  • Priority: High priority
  • Also Known As: Confirmation testing

Regression Testing:

  • Purpose: Ensure existing functionality still works after changes
  • Scope: Entire application or affected modules
  • When: After any code change (fix, enhancement, new feature)
  • Test Cases: All or subset of existing test cases
  • Automation: Highly recommended to automate
  • Priority: Can be medium to high
  • Also Known As: Verification testing

Example Scenario

Bug: Login button doesn’t work with special characters in password

  • Retesting: Test login with special characters again to verify the fix
  • Regression Testing: Test all login scenarios (valid login, invalid login, forgot password, etc.) to ensure the fix didn’t break anything

Key Difference

Retesting = “Did we fix the bug?” Regression Testing = “Did the fix break anything else?”