Back

What is Regression Testing?

Regression testing is the process of continually testing all features of a product. This includes both new and old product features. Regression testing on older features is often less intensive than testing of new features. With new features, testers need to make sure everything works appropriately in every case. With older features, testers just have to ensure that it isn’t broken. This is often done by evaluating a smaller set of actions to make this process more efficient. If a few parts of a feature work as they did before, the rest of the parts probably do as well.

Benefits of Regression Testing

Regression testing has a number of benefits when applied properly. One of the biggest benefits is automation. Testing of new features often requires an actual tester driving the process. Regression testing, however, can be run via automated programs or scripts. A subset of tasks can be programmed to run regularly, frequently once per day or once per week. If these automated tests encounter the results they expect, everything is assumed to be working properly. If any of the tests fail, a tester can manually investigate to see what has changed. Changes are sometimes intentional, and the test can be updated accordingly. Other times, changes reflect an actual failure. In this case, testers can alert developers, and have them fix what was broken with new programming changes.

Another great benefit of regression testing is continuity of business. This refers to the idea that customers using software can continue using it without a break. By testing old features regularly, an organization can catch issues before they are released to customers.

A less obvious benefit of regression testing is the reduction of potential problems with old code. Instead of letting problems go unchecked for weeks or months until customers report them, regression testing points out flaws in features immediately. If regression testing didn’t catch these errors so quickly, the developers may build on broken code. As more new features are added, it becomes more and more complicated to change the flawed foundation. Regression testing ensures that these problems are solved quickly, and not allowed to grow into bigger issues.

Recommended Further Reading

The following materials may assist you in order to get the most out of this course:

Translate »