So what are the objectives here:
Test Isolation means , test code is not accessible with the source, as his can cause security issues, and induce vulnerabilities.
We can Extend and Generalize Test Frameworks beyond just testing the particular source.
We can do refactoring and improvement regardless of Source Changes
Because of isolation we can try running the same test framework against various branches of source code
Performance problems with test code , run time , or overflows do not directly affect test runs, as we can easily revert to the version of the test framework that was performing well.
Questions:
Should the test code and source code be in the same branch ? How would we set that up ? how would that work with lets say subversion, what would be the pros and cons ?