Do you put unit tests in the same project for convenience or do you put them in a separate assembly?
If you put them in a separate assembly like we do, we end up wit
I fluctuate between same project and different projects.
If you're releasing a library releasing the test code with the production code is a problem, otherwise I find it usually isn't (although there's a strong psychological barrier before you try).
When putting tests in the same project I find it easier to switch between tests and the code they test, and easier to refactor/move them around.