Sunday, 4 August 2013

Automation Tools for Regression Testing

Automation Tools for Regression Testing

Once the application code changes it is carried out its re-testing which is also called regression testing. This is done to make sure that everything is working correctly and that the changes did not result in any new software bugs.

The destination of this type of testing is to verify that operating functions are not broken after the change of the code.
It is important to conduct regression testing as often as possible (for example, after new software build), so that code modifications that damaged how application works can be quickly identified and fixed.

As soon as there is something to test, then regression testing begins. Regression testing begins as soon as there is something to check at all. The regression test suite grows as the application moves ahead and test engineers add test cases that test new or rewritten code.  Soon the suite may extend to thousands of test cases that cover various application functions. Obviously there is a fact that a person cannot repeat all the tests and analyse their results. That is why at this moment automation regression tests are necessary.

When should we start regression testing?

At that moment, when a programmer fixes a software bug or adds a new code for new functionality of the system - at this point regression testing begins. It is a quality measure to check that new code complies with old code and unmodified code is not getting affected. Most of the time testing is used to check the recent changes in the system. In such situation testing only affected application area in necessary to complete the testing process in time with covering all major system aspects.

What do we include in regression testing?
  • Rerunning the previously conducted tests
  • Comparing current results with previously executed test results.

How much time is needed for regression testing?

This depends on the scope of new added feature. If the scope of the fix or feature is large then the application area getting affected is quite large and testing should be thoroughly including all the application test cases. But only if the tester receives input from the developer on the scope, number and nature of changes, only then it can be effectively.

Regression testing and changes in GUI

It is distressing to make graphical user interface regression testing when GUI structure is altered. The test cases written on old GUI either get archaic. Update of the regression testing test cases means GUI test cases are changed according to new GUI. But if you have many GUI test cases, then this job becomes unwieldy difficult.

Tools for automated regression testing

Automated regression testing is the testing area where we can automate most of the testing efforts. Expected results so automating these test cases are time-saving and efficient method for regression testing as well as manual testing takes too much time. The degree of automation depends on the number of tests that will remain applicable over time. If test cases are varying time to time as application scope goes on increasing then automation of regression procedure will be the waste of time.

The vast majority of regression testing tools are recording and playback type. As you can imagine, this means that you will write tests on AUT navigation and test results are expected or not.
Here are some examples of tools of regression testing:
  • Selenium
  • ActiWate
  • AdventNet QEngine
  • Regression Tester
  • Rational Functional Tester
  • SilkTest
  • WinRunner
  • QTP
  • VTest
  • Watir
Most of the tools used by both functional and as tools for regression testing.

Author: QATestLab
Source: Link

1 comment:

  1. thx always had trouble differentiating between retesting and regression this clears things up!