Executed to ensure proper functionality of an application after new features, fixes, or modifications have been applied to the software to ensure its environment and has not adversely affected. Make sure that fixing one thing has not broken another thing.
Regression suites are the super-set of tests required to validate all aspects of the application or system (for in-depth, full end-to-end testing)
Regression testing can be performed during any level of testing (Unit, Integration, System, or Acceptance) but it is mostly relevant during System Testing. [1]
Tests can be Manual or Automated. Due to the scale and importance of regression testing, more and more companies and projects are adopting regression test automation tools. [1]
Test Results
When this test is done, the tester should verify whether the existing functionality is working as expected and the new changes have not introduced any defect in functionality that was working before this change.
Caption: Regression: "when you fix one bug, you introduce several newer bugs." [2]