If there are any modifications of the code or changes of some features, then regression testing is performed. This type of software testing helps to verify whether the system operates in a proper way after undergoing some code modifications.
Its main aim is to discover the errors that may be introduced accidentally after:
- adding a new feature,
- doing an enhancement,
- fixing a bug of any kind,
Also, regression testing helps to make sure that the bugs, detected during performance testing, are fixed and the procedure of their removal does not influence anyhow the proper work of the code.
The Advantages of Regression Testing:
- It promotes the improvement of the product quality.
- The automation principle can be applying to regression check.
- It ensures that the issues already detected and fix are not creatable now.
- It verifies that the modifications do not impact the correct work of already tested code – detects any side effects.
- Regression tests can be used during integration testing. In this case, they will be more useful.
To provide the effective execution of regression testing, the specialists use special techniques. There are four basic types of checking techniques:
- corrective regression testing – tests can be reused, there are no changes in spec,
- progressive regression testing – new tests are created, as the spec was changed,
- retest-all strategy – time-consuming procedure, all tests are reused,
- selective strategy – only the tests connected with the modified code fragment are rerun.