1) Ideally all the tests in a test suite should be rerun for every new development spiral. However it may not be realistic due to time crunch.
2) Some regression testing should be carried out during every development spiral. This would ensure that previously proven capabilities are not adversely affected due to some correction of errors or by any of the later development spirals.
3) Regression testing must be treated as a subset of the system tests especially when the system is stable with verified functionality during the system testing. Test managers need to formulate policies to decide which tests to include.
4) Regression tests are the best candidates for test automation, especially when they get repeated time and again during every testing spiral.
5) Regression testing should be placed between the releases after the initial release of the application.
6) We should rerun every test after any correction, especially the ones that discovered an original defect.
7) We should try to exert deeply to ensure that the original defect had been corrected and not simply removal of its symptoms.
8) We should try to remove all the regression tests, which happen to repeat some other tests.
9) We should include all test cases in our regression test suite, especially the test cases in functional areas where some defect had been detected.
10) We must allocate a topmost priority & carry out thorough regression testing on defects reported by the client.
11) We can use retest matrix methodology to plan our regression tests, which works very well in relating the test cases to different functions or program units as described below.