Javatpoint Logo
Javatpoint Logo

Regression Testing

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.

Regression Testing

Reason behind Regression Testing

Requirement of Regression Testing is when:

  • The code is changed or modified due to change or enhancement in Requirements.
  • There is software enhancement by adding new features.
  • Defect resolve or fixed.
  • Performance checking after fixing defects.

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 Testing

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.

Retest All

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

  • Collect the list of defects fixed or modified software applications.
  • Select prioritized test cases depending on critical & frequently used and business impact functionalities.
  • Select remaining test cases if regression testing is necessary for them.
  • Perform regression testing by using automated tools.
  • If any defect is occurred then send it to the development team.

Next TopicFunctional Testing

Please Share

facebook twitter google plus pinterest

Learn Latest Tutorials


Trending Technologies

B.Tech / MCA