What is “regression testing”?
Regression testing is a testing technique to ensure that changes, enhancements, bug fixes, or adding new functionality to the software have not adversely affected the existing functionality of the software or that the changes have not introduced new bugs.
Regression testing can be accomplished using manual test efforts, but the ideal method is the use of automated scripts. Over time as the application grows manual regression testing becomes more expensive and takes more time, so implementing automated regression testing is a huge benefit.
What things should be covered during regression testing?
- Complete regression testing, where all tests in the current library are executed. Depending on the number of test cases, this can be a very time and resource intensive.
- Build verification testing, suite of tests to be run of each build to test stability before accepting into the test environment. Used to ensure that the overall functionality of the application under test is still working as expected.
- Targeted regression testing, a select subset of the Complete Regression Suite. Select test cases to be run based on a specific enhancement or bug fix to determine if an area of the application was impacted by the code change.
So depending on where you’re at in the development cycle these are a few options to consider when planning your testing.