G'day
What you are describing is not regression testing. You are just testing new features.
Regression testing is where you specifically run your full test suite to see if the code that supports your new feature interrupted the previous working code.
I would highly recommend reading Martin Fowlerโs excellent article , Continuous Integration , which covers some of the aspects you are talking about.
He can also provide you with a better way to work, in particular the CI aspects that Martin talks about in his paper.
Edit: Especially since CI has hidden little traps that are obvious in retrospect. Things like stopping testers trying to test a version that did not yet have files that implement the new feature. (You check that there have not been any commits in the last five minutes).
Another important point is the loss of time if you have a broken assembly and you do not know that it is broken until someone checks the code and then tries to build it to check it.
If it is broken, you now have:
- a tester sitting unable to perform scheduled tests,
- the developer interrupts his current work in order to return to the previous work in order to figure out what causes the broken assembly. Most likely, these are developers, because the problem is the interaction of two separate parts, each of which worked on its own.
- loss of time due to the fact that the developer (developers) must return to thinking for this previous part of the work and
- loss of time for the developer to return to thinking of the new part of the work on which they worked, until the investigation was interrupted.
The main idea of โโCI is to make several assemblies of the complete product during the day so that you catch the broken assembly as early as possible. You can even select several tests to verify that the core functions of your product are still working. Once again, to notify as soon as possible that there is a problem with the current state of your assembly.
Edit:. As for your question, what about tagging the repository when you did the testing, for example. TESTS_COMPLETE_2009_12_16. Then, when are you ready to develop the next set of tests that performs "svn diff -r" between these last completed tag tags and HEAD?
NTN
BTW I will update this answer with some additional suggestions as I think of them.
amuses
Rob wells
source share