The difference between re-testing and regression testing is
-
Re-testing ensures the original fault has been removed; regression testing looks for unexpected side-effects
-
Re-testing looks for unexpected side-effects; regression testing ensures the original fault has been removed
-
Re-testing is done after faults are fixed; regression testing is done earlier
-
Re-testing is done by developers; regression testing is done by independent testers
Re-testing (confirmation testing) specifically checks that the reported defect has been fixed - it reruns the failed test case after the fix. Regression testing looks for unintended side-effects - it checks whether the fix has broken other previously working parts of the system. They serve different purposes: re-testing validates the fix worked; regression testing ensures no new defects were introduced. Option A correctly captures this distinction. Options C and D incorrectly attribute timing or personnel differences that aren't inherent to these concepts.