My Life As A Blog

Lost Weekend

with one comment

Well, not quite lost but bear with me. I started out with a simple enough idea – run ncover across nspectre. There was a small oversight in the settings file left over from the last time I ran ncover so I was getting no coverage (remember not to include the file extension in the assembly name.) Before I spotted the obvious mistake I upgraded ncover to the latest version (uninstall followed by clean install.) Looking at some ncover docs, I spotted my mistake and everything worked. 89% coverage.

And then, I went crazy. I decided to upgrade to the latest version of NUnit and TestDriven .NET. So, I uninstalled the existing versions, got the new installers and installed. Ran the tests and noticed that instead of the 396 tests, only 275 tests were being run. Tried to run the NUnit GUI and it crashed with a message about 2.2.0. So, I uninstalled NUnit 2.2.7 and reinstalled 2.2.0. Ran the test in the NUnit GUI and everything was back to normal. In TestDriven though the problem hadn’t gone away. So I ran the tests from TestDriven through the NUnit GUI – 275 tests. And the GUI looked different. Checked the About dialog and it turns out that TestDriven bundles a copy of NUnit 2.2.7. Regressed back to the previous version of TestDriven, and back to 396 tests all green.

A lot of food for thought about dependencies (nspectre includes a customised version of the Ader Template Engine) and where the 121 tests went. I couldn’t find anything easily on the Internet but I’ll keep looking. I’m still a big fan of TestDriven and NUnit (and ncover). Sometimes you don’t need the latest versions…


Written by remark

March 21, 2006 at 9:58 pm

Posted in nspectre, Tools

One Response

Subscribe to comments with RSS.

  1. […] As I mentioned here the other day, nspectre uses a customised version of the Ader Template Engine.  The Ader Template Engine is the only dependency of nspectre. The customisation is that the Ader Template Engine suppresses template exceptions or outputs them inline. Since nspectre uses templates to generate code that is compiled at runtime, it is more useful to have the template engine throw exceptions because this provides more useful feedback than the compilation exception that would otherwise occur.Originally – before release – nspectre used NVelocity. The switch to the Ader Template Engine halved the time the unit tests took to run. The change between the template languages was fairly easy. NVelocity has resource loading functionality, so I had to add the ResourceLocator class. It seems reasonable to me that a templating engine should handle templates and no more, so that wasn’t a major concern. […]

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: