The LEAP

Automation insights and productivity tips from LEAPWORK.

All Posts

What is Regression Testing?

When developers write and submit new code for an application, those pieces of code sometimes have unexpected effects on existing code, causing it to break. 

It’s difficult to avoid this altogether, but it is possible to detect that broken code before it is released. This is done with regression testing.

Regression testing is essentially a series of tests that check that the application runs as intended. The idea is to run this series of tests every time new code is submitted.

It’s called regression testing because the verb regress means to return to a former state or condition, which in software, isn’t considered a good thing.

In other words, regression testing is used to search for regressions to ensure that new updates or features that are added to software (involving new or changed code) don’t break any previously released updates or features (existing code), and to ensure that the tested software still performs as desired after a change.

 

Regression testing is often confused with retesting, but the two differ on one key aspect: Regression testing is frequently run on the entire product, whereas retesting is used to check a specific feature, after you’ve fixed a bug in it, meaning regression testing is designed to test for bugs you don't expect to be there, whereas retesting is designed to test for bugs you do expect to be there. 

In that sense, regression testing is a bit like your insurance policy, or your seat belt. You don’t always need it (in fact you hope you won’t ever), but you still have to have it, just to be safe.

This is why many testers consider manual regression testing particularly tedious; it’s a bit like being given the task of searching through a haystack for a needle that probably isn’t there. And you don’t just have to do it once, you have to do it every time new code is created.

What’s more, the suite of regression tests grows with the product, meaning that over time, it becomes practically impossible to execute and maintain manually. 

For this reason, many QA teams choose to automate their regression testing.

Read on in the next blog post on this topic: 5 reasons why you should automate regression testing or download our whitepaper on how to do regression testing in agile teams.Download regression testing whitepaper

Maria Homann
Maria Homann
Content Marketing Manager

Related Posts

Parallel Testing with Codeless Test Automation

The pressure on software development teams to deliver quality at high speed has never been greater. Teams must be able to test continuously and be agile in an increasingly digital world, driving the need for new methods of quality assurance.

Why Continuous Integration isn’t Continuous without Test Automation

Becoming agile will take time and require commitment, but it is nonetheless vital for harnessing the forces that are accelerating innovation and digital transformation for organizations worldwide.

A Guide to Achieving Continuous Integration in Agile

Becoming agile is never a straight path to success. Teams will prepare strategies, research and implement tools, adopt Scrum frameworks, and still struggle to achieve a truly agile software delivery cycle.