Dogfooding Challenges Part Two: Unit Testing.


Another problem related to using VS in order to develop VS happens in the area of unit testing.  The problem here is that my team would like to write tests for the C# language service in C#, unfortunately, this means that our dogfood IDE has the release version of the language service already loaded.  Due to the way DLL loading works in windows, you can only have a DLL loaded with a given name, which means that the Unit Test framework is unable to load the debug copy of the language service that we just built.  On our team, we work around that by building two versions of all of our assemblies, which are identical except for their names.  That way we’re able to load a unit-test specific version.


Unfortunately, this has other drawbacks.  For example, it makes it impossible to combine code coverage results from unit tests, with the results from integration tests, since they are for different binaries.


Comments (4)

  1. Welcome to the thirty-seventh edition of Community Convergence. Visual Studio 2008 has been released

  2. Welcome to the thirty-seventh edition of Community Convergence. Visual Studio 2008 has been released

  3. Corn says:

    Seriously, correct the spelling to "Dog" fooding, and try to give context to your posts, elsewise it looks like worthless crap to most people and try to remember not everyone works at Microsoft.  Cheers…

  4. Hi Corn,

    Thanks for the comment.  I can’t believe I mis-spelled the title of the post!  I’ve fixed the spelling.  Regarding context, I think that most of the context was given in part one of this series.