Website Regression Testing

What is Regression Testing?

Let's explain...

Regression testing is used to verify that features and functionality that worked correctly before any coding updates were carried out still work as intended after the updates.

Regression testing is used verify that features that worked correctly before any coding updates were carried out still work as intended afterwards.

Website Regression Testing

What is the purpose of regression testing on a website?

Regression testing, also known as sanity testing, is carried out to ensure that the features and functionalities on a website which were functioning correctly prior to coding updates continue to work as intended after the updates.

The main purpose of regression testing is to confirm that the updates have not negatively impacted other features, causing them to either function or display in ways which are unintentional, or even fail completely.

Regression testing is not exclusive to website development, but also to apps and software development in general.

Why is regression testing important?

The main reason that regression testing is important is that the addition of new features or functionality, or updates to existing features and functionality can cause unwanted changes elsewhere.

When defects (also commonly referred to as bugs) are found and fixed, confirmation testing should be carried out by re-running test cases to confirm that the defects have been fixed. Then regression testing should be carried out to ensure that the any code changes which were carried out to fix the defects did not introduced any new issues.

By re-executing relevant test cases or test suites, regression testing helps ensure that the software still functions correctly after changes have been made. Regression testing can therefore be very repetitive, which explains why many companies with larger websites use automated regression testing tools.

Is regression testing really necessary?

If web developers didn't make mistakes, would we need regression testing?

Some may argue that regression testing would be unnecessary if web developers didn't make mistakes. But that's not the case... Firstly that's a bit harsh on web developers, and secondly, even in the absence of mistakes, there is always a possibility of unforeseen problems arising.

For example:

  • Database entries might suddenly start causing unpredictable things to happen on the website. In other words something in the databases in the back end cause strange things to happen on the website at the front end
  • Changes to styling definitions (in the CSS which the website uses) may have been updated for the new feature, but has impacted another feature which shared some of those styling parameters.
  • With many websites using plug-ins and external font and styling libraries, those external sources are often outside of the control of the website being tested. If those change or break, they could have unforeseen consequences on your website!

It's not my fault!

These might not necessarily be mistakes on the part of the developer, but also bear in mind that many large website platforms undergo a number of separate project implementations at the same time, and those might be handled by different developers who are working in isolation.

The despite each of those separate projects being tested successfully under a process known as Acceptance Testing when those individual projects (or updates) come together on the same platform, there might be some incompatibility issues.

Regression testing could find those issues, and then bugs can be reported, tracked, fixed, and then regression tested again before the project can proceed along the path towards being released into the live environment.

Levels of regression testing

Regression testing can be performed at various levels, such as:

  • unit testing (testing individual components or modules),
  • integration testing (testing the interaction and compatibility between components), and
  • system testing (testing the entire system as a whole),

And as already mentioned it can be carried out manually or automated using testing tools, depending on the complexity and scale of the software application.

Thoughts, suggestions or comments?

Comments or Feedback?

If you have any comments, thoughts or suggestions about this article, please let us know.

Use the social media buttons below to share this article.

Fields marked with * are mandatory

security code 1st charactersecurity code 2nd charactersecurity code 3rd charactersecurity code 4th character

Daron Harvey

I'm Daron Harvey, founder of Targa Web Solutions, specialising in AI chatbot implementation, website testing, auditing & consultancy. I am now in my 28th year of professional website production, testing and eCommerce best practices, and excited about the opportunities that AI chatbots and digital assistants can bring to ourselves, our customers, and our customer's customers.
Twitter  Facebook  LinkedIn

Targa Web Solutions Targa Web Solutions logo