dotCover only provides reporting on statement-level coverage, where as other tools like NCover also include function and branch coverage.
With a TeamCity MSTest build step you get to specify which assemblies you want the coverage reported for in the "Filters" field. This allows you to just specify an exclude for a .Tests
pattern or just include one assembly. See the TeamCity documentation for more details:
http://confluence.jetbrains.net/display/TCD7/JetBrains+dotCover
I believe that if you don't specify any filters, all code in all assemblies that were loaded into the CLR are included (you have to cause an assembly load from the code you call, so some assemblies might not be included, this is just the lazily loading of the CLR). This is because tools like dotCover use the CLR profiling API and do not instrument your code upfront. Note that dotCover will exclude assemblies from the GAC.
Assembly.Load("MyAssembly")
in a unit test. – Fantoccini