Loading, please wait...

A to Z Full Forms and Acronyms

What is Regression Testing? | Software Testing

May 19, 2022 softwaretesting, testing, regression, 610 Views
In this article, you will learn the following:What is regression testing?When do we perform regression testing?Techniques to perform the regression testing.What are the challenges we face in regression testing?

What is Regression Testing? | Software Testing

In this article, you will learn the following:

  • What is regression testing?
  • When do we perform regression testing?
  • Techniques to perform the regression testing.
  • What are the challenges we face in regression testing?

What is Regression Testing?

Regression testing is considered a black-box technique. It authenticates a code change in the software without impacting the existing functionality of the software. It makes sure that the new functionality added to the software is working without a bug. It is a kind of software testing. Test cases are re-executed to make sure that the functionality of an application is working properly and no new changes are producing any bugs. It is performed on the new build to verify the original functionality of the application. Regression Tests are also called Verification Methods. 

When do we perform regression testing?

  1. When we add a new functionality
  2. When there is a change in the requirements of an application.
  3. After fixing the defect we have to do regression testing again.
  4. After the performance issue is fixed, we need to perform regression testing.
  5. After the environment change of an application.

Techniques to perform regression testing:

Regression testing is used when we consider software maintenance that includes enhancement, error corrections, optimization, and deletion of existing features. The modifications in the software might affect functionality that’s why we use regression testing. 

Regression testing is performed using the following techniques:

  • Re-test All: Re-test simply means re-execute all the test cases suites. When the result of the test cases comes out to be a failure, we can easily figure out the cause of the failure of the software. The tester reports the fault and expects the new version of the software. In this scenario, we have to execute the test cases again to verify the fault. This process is known as Re-testing. The re-testing is an expensive and time-consuming process. 
  • Regression Test Selection: In this process, the tester will execute only the selected test case suite instead of executing the complete test-case suite. The selected test case scenario is divided into two cases: Reusable test cases that can be used in succeeding regression test cycles and Obsolete test cases which can not be used in the succeeding regression test cycle. 
  • Prioritization of test cases: Give the priority to the test cases and execute the test cases in the same manner. It means reducing the regression test selection. 

What are the challenges we face in regression testing?

  • It is a time-consuming process. It involves re-testing the existing test cases.
  • It is a somewhat complex and lengthy process. When we update the product, the list of test cases also increases. 
  • Figure out the impact areas.
  • No Accuracy
  • Monotonous Job
A to Z Full Forms and Acronyms