I blogged about two specific problems with VS2005 that have been driving me nuts this week. Now I think I found a solution to one of them: the crashes caused when running your tests from TestDriven.NET's menu.
I remembered reading on the nunit-users
mailing list (or was it nunit-developer
?) that NUnit does not quite support .NET 2.0 at 100% yet. People have been getting the source from the CVS repository and have been building their own versions of the library, targeted at a specific .NET 2 framework version since the betas. I decided to try and do that myself.
- First I got the source. I have an installation of cygwin on all machines that I get my hands on, so I used the cvs console tool (a direct port of the UNIX version). You might want to visit http://wincvs.org/ to get a cool windows utility that will help you getting the NUnit source.
- I opened the nunit_VS2005.sln solution in the src directory and tried to build it.
- I got many errors about missing files that were being included in the deployment project. This is no problem, really. I remember Charlie Poole explaining that the project is not really up to date and those files are not needed. Even if they are, they were images and stylesheets, used for the examples and the documentation -- I can live without that. I removed the file references from the deployment project and I got a shiny new MSI package.
The official NUnit version that you can download from http://www.nunit.org is 2.2.0. The one that I built is labeled 2.2.3. I changed the references in my projects, rebuilt from scratch, and ran the tests. Everything worked fine. Even TestDriven.NET works without problems. I have not been able to make VS2005 crash. Who knows what the problem with the older version was.
I don't think this build will work with VS2003 and .NET 1.x assemblies. I might have to have both NUnit 2.2.0 and 2.2.3 installed on my machine.