0
2.0kviews
Explain Regression testing types.

Mumbai University > Information Technology > Sem 8 > Software Testing and Quality Assurance

Marks: 5M

1 Answer
0
2views

Regression testing is used to check for defects propagated to other modules by changes made to existing program. Thus regression testing is used to reduce the side effect of the changes.

Regression testing is a black box testing technique that consists of re-executing those tests that are impacted by the code changes. These tests should be executed as often as possible throughout the software development life cycle.

It is performed by executing units of code repeatedly to ensure that the on-going code modifications do not impact the systems functionality. Alterations to the application can occur in various forms, be it new functionality, bug fixes, integrations, functionality enhancements, interfaces, patches, etc.

Many software development engineers would insist that as long as essential functions are tested and are able to deliver results as per requirement, it would suffice

Regression testing can prove to be a real blessing at a later stage, because rather than just guaranteeing the functionality being tested for, it ensures that there are no other nasty surprises.

It is advisable for regression tests to be executed as often as possible throughout the software development life cycle.

Types of Regression Testing

Often, regression testing is done through several phases of testing. It is for this reason, that there are several types of regression testing.

Unit regression

  1. Testing only one specific fixed unit or feature.
  2. Unit regression testing, executed during the unit testing phase, tests the code as a single unit.
  3. It has a narrow and focused approach, where complex interactions and dependencies outside the unit of code in question are temporarily blocked.
  4. An automatic test to test the internal workings of a class.
  5. It is a stand-alone test which is not related to other resources.
  6. Testing of individual module or independent component in an application is known to be unit testing , and is done by developer.
  7. Unit testing is directed at the smallest part of the implementation possible. In java this means you are testing a single class.

Partial regression

  1. Partial regression is performed after impact analysis.
  2. In this testing process, the new addition of the code as a unit is made to interact with other parts of older existing code, in order to determine that even with code modification, the system functions in silos as desired.

Complete regression

  1. Complete regression testing is often carried out when the code changes for modification or the software updates seep way back into the roots.
  2. It is also carried out in case there are multiple changes to the existing code.
  3. It gives a comprehensive view of the system as a whole and weeds out any unforeseen problems.
  4. A sort of a “final” regression testing is implemented to certify that the build (new lines of code) has not been altered for a period of time.
  5. This final version is then deployed to end-users.

Final Regression Tests

  1. A "final regression testing" is performed to validate the build that hasn't changed for a period of time
  2. This build is deployed or shipped to customers.

Regression Tests

  1. A normal regression testing is performed to verify if the build has NOT broken any other parts of the application by the recent code changes for defect fixing or for enhancement.
Please log in to add an answer.