Automation insights and productivity tips from LEAPWORK.

All Posts

What is the Difference Between Retesting and Regression Testing?

Software testing consists of a number of different types of tests. These can easily be confused due to their resemblance and seemingly overlapping purposes.

Retesting and regression testing are two commonly confused concepts. Not only do they sound alike, they also have several similarities.

The main difference between the two is that 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.

There's more to it than that, though, so let's go into further detail with these one by one to clarify the meaning of these concepts.

What is regression testing?

The verb regress means to return to a former state or condition. In software, this usually isn’t considered a good thing.

That is why software developers test for regressions, hence the term regression testing. The point of regression testing is to ensure that new updates or features added to a software don’t break any previously released updates or features.

To perform regression testing you typically have a regression suite – a series of test cases set up to test these older features.

Regression test cases are often automated because, as you can perhaps imagine, these tests tend to build up as the software changes or grows.

You can learn much more about regression testing and how you can automate it in this blog post.

What is retesting?

Where retesting differs from regression testing is that, instead of being designed to search through all the previous updates and features of the software to find unforeseen defects and bugs, retesting is designed to test specific defects that you’ve already detected (typically during your regression testing).

In other words, regression testing is about searching for defects, whereas retesting is about fixing specific defects that you’ve already found.

They can therefore occur in one and the same testing process, where:

  1. You update your software with a new feature
  2. You test the existing functionality (regression testing)
  3. You detect a bug in your existing functionality
  4. You fix the bug
  5. You retest that functionality (and hope that it works!)

Regression testing vs. retesting: key differences

You could actually say that regression testing is a type of retesting. Retesting essentially just means to test something again. And when you are regression testing, you’re typically testing something that you’ve tested numerous times before.

But determining what the two have in common might confuse more than it will help. So for the sake of clarity, here’s an overview of the key differences.

Regression Testing Retesting
Involves testing a general area of the software. Involves testing a specific feature of the software.
Is about testing software which was working, but now, due to updates, might not be working. Is about testing software which you know was not working, but which you believe to have been fixed. You test it to confirm that it is now in fact fixed.
Is ideal for automation as the testing suite will grow with time as the software evolves. Is not ideal for automation as the case for testing changes each time.
Should always be a part of the testing process and performed each time code is changed and a software update is about to be released. Is only a part of the testing process if a defect or bug is found in the code.


Make sure to read our whitepaper on the topic to learn more about regression testing in agile teams.Download regression testing whitepaper

Maria Homann
Maria Homann
Content Marketing Manager

Related Posts

How to Automate Mobile Web Testing with Codeless Selenium

With brick and mortar stores closed during an on-going pandemic, websites, especially e-commerce websites, have to focus more than ever on creating quality customer experiences online. This has created a need for faster testing and new website functionality.

What is Mobile Web Testing and Why Should It Be Automated?

Websites and web applications are a huge part of how businesses acquire customers. Just one poor customer experience can sway their purchasing decision, especially in e-commerce.  Users who have a negative experience on a mobile website are 62 percent less likely to purchase from that business in the future. - Think with Google. 

Streamlining System Upgrades in ServiceNow with Automated Testing

For many enterprise businesses, ServiceNow is an operational backbone. But twice a year, panic unfolds. ServiceNow release two major mandatory upgrades requiring extensive testing. And more often than not, functional and regression testing gets postponed or left behind.  When these tests are postponed or skipped, it leaves businesses open to risk. In these key moments, system administrators and developers face pressure to complete functional and regression testing at speed.