Regression testing is performed specifically to verify that modifications, bug fixes, or updates in one part of the code have not adversely affected existing, unchanged features. It does not focus on testing new changes directly, nor is it restricted to automation or UAT.