Retesting
Retesting is a process to check specific test cases that are found with bug/s in the final execution. Generally, testers find these bugs while testing the software application and assign it to the developers to fix it. Then the developers fix the bug/s and assign it back to the testers for verification. This continuous process is called Retesting.
Regression Testing
Regression testing is a software testing practice that ensures an application still functions as expected after any code changes, updates, or improvements. Regression testing is responsible for the overall stability and functionality of the existing features. Whenever a new modification is added to the code, regression testing is applied to guarantee that after each update, the system stays sustainable under continuous improvements. Changes in the code may involve dependencies, defects, or malfunctions. Regression testing targets to mitigate these risks, so that the previously developed and tested code remains operational after new changes. Generally, an application goes through multiple tests before the changes are integrated into the main development branch. Regression testing is the final step, as it verifies the product behaviors as a whole.
Difference between Regression testing and Retesting
- Regression testing is performed for passed test cases, while Retesting is done only for failed test cases.
- Regression testing checks for unexpected side-effects, while Re-testing makes sure that the original fault has been corrected.
- Regression testing doesn’t include defect verification, whereas Re-testing includes defect verification.
- Regression testing is known as generic testing, whereas Re-testing is planned testing.
- Regression testing is possible with the use of automation, whereas Re-testing is not possible with automation.