Regression Testing is the process to test that, if code is changed in any function does not impact the existing functions of the software application. The process confirms that the old functions still work with the new modified functions.
Regression testing tests only modified or defect fixed functions and partially selected functions that can adversely be affected due to the modification. The same test cases are executed for modified functions, which has already been executed. The reason behind this, when the new version of any software is released it tested under old test cases to ensure that all old features still working with correctness and in the same manner. If any function is not working correctly, that means changing or adding new code have introduced a new error.
Reason behind Regression Testing
Requirement of Regression Testing is when:
How to perform Regression Testing?
Regression Testing comes in a picture during the maintenance phase of a software application which includes error corrections, enhancements, deletion and optimization of existing features. These variations and modifications can introduce new errors, and these errors can cause incorrect working of the system. That's why Regression Testing is essential.
Regression Testing is carried out by the following techniques:
Regression Test Selection
In this technique, selected test case suits are re-executed rather than re-executing all test case suits. The selected teste case suits are categorized in Reusable test case suits and Obsolete test case suits. Reusable test case suits are used in succeeding regression cycles, but Obsolete test case suits are not used in succeeding cycles.
Prioritization of Test Cases
In this technique test case suits are prioritized depending on critical & frequently used and business impact functionalities. This technique is helpful in reducing the number of regression test case suits.
In this technique of regression testing, all test case suits are re-executed due to which it is time-consuming and expensive as required resources.
Testing Tools for Regression Testing
When there is continual improvement in software, Regression testing is required. Execution of test cases manually, increases both time and cost therefore automated testing is the smart choice.
Following are the tools used for regression testing:
QTP stands for Quick Test Professional. It is an automated testing tool used for regression and functional testing. It uses VBScript for automation.
This tool is used for automated testing of web applications. It is used for browser-based regression testing.
RFT stands for Rational Functional Tester. It is used for rational, functional testing. It uses java language for automated test cases of a software system.
Guidelines for Regression Testing