“More than the act of testing, the act of designing tests is one of the best bug preventers known.” – Boris Beizer
What is Regression Testing?
Testing of a previously tested component or system following modification to ensure that defects do not arise is called Regression Testing.
In simple words, Regression testing is testing whether the application/product is not impacted by the newly introduced features or bug fixes.
When Do We need to do Regression Testing?
Whenever we modify an application, we should do regression testing. Here are a few scenarios:
- New functionalities added in the application
- Bug fixes
- When there is a Change in Requirement
- Performance tuning
- Software upgrades/environment changes
Why Do We need to do Regression Testing?
To ensure that the other parts of the application do not break because of new feature/bug fixes
How to Conduct Regression Testing?
Regression testing Techniques
The below picture shows the techniques to conduct regression testing.
Retest All
Retest All test cases in the test suite
Selective
From the complete suite, few test cases are selected
Prioritization
Based on the priority of the functionality the test cases are selected
Regression Testing with an example
In an Online Store, a new payment method PayPal is introduced along with the existing payment methods Credit/Debit cards. The below mind map shows how to identify test cases for regression testing for the above mentioned scenario.
How to Overcome Challenges in Regression Testing?
- Optimize the regression test suite
- Emphasis on most-trafficked paths
- Analyze the bug reports in detail
- Be prepared for the Impact of New Changes
- Execute Smoke & Sanity Test Automation
I hope this blog helps to explain more about conducting Regression Testing. Apart from this, you can leverage a test management tool to make you smarter and get things done sooner, in a systematic way.
Drop us a line, and we’d be happy to keep improving QA touch with your suggestions and feedback.