Regression testing is a quality assurance process that involves re-running functional and non-functional tests to ensure that previously developed and tested software continues to perform correctly after a change. This change could be a code revision, a bug fix, or an update to the system. The objective is to confirm that the new changes have not adversely affected the existing functionalities.