Where Should Your Tests Live?

Tom Opgenorth
Thanks to Phil Haack's online poll, there is a bit of controversy over where one's unit tests should reside:  should the unit tests be housed in a separate project and assembly, or do they shack up in the same project as the code that they are testing?  Like Bil, I figured that rather than a big long blog comment, I'd be better of with my post. Way back when I started out with TDD, I used to put the test fixtures in the same file as the class under test, sort of like: