Thursday, February 16, 2006

NCoverExplorer... Updated v1.3.1

Apologies to any of the "early adopters" of my latest build who downloaded yesterday and may have hit an issue. I have just pushed a fixed build online now along with TestDriven.Net build 2.0.1438.

The problem only arose when NCoverExplorer tried to highlight a multiline statement with a blank line in the middle. Not an everyday occurrence but certainly one user came across it (my thanks to Trevor Hall) - the code below would blow up fairly spectacularly with the previous v1.3.0 build:


To anyone wondering why this didn't occur with NCoverExplorer v1.3.0 or earlier - it's because I put in a number of workarounds for the otherwise brilliant ICSharp.TextEditor control in this release to improve the highlighting. The TextEditor control appears to be designed to highlight on a "word" basis for a line, whereas I want to highlight absolute positions as reported by NCover. Unfortunately it's word-based approximation sometimes resulted in misleading highlights on screen.

Fingers crossed this is the last of the tweaks on this issue... but as always if you have a problem feel free to report it.

Filed in:

Wednesday, February 15, 2006

NCoverExplorer... v1.3.1

A ton of new features in the latest release, and a few bugs fixed ranging from minor annoyance (code highlighting) to downright critical for some (supporting .Net 2.0 features like partial classes and generics - thanks to Jamie Cansdale & Andreas Hofer in particular for pointing out the issues!).

As per usual you can download this version with the just released build (2.0.1435) of TestDriven.Net or as a standalone product via the links at the bottom of this post.
[Update] A post-release bug fix implemented on Feb 16th, updated on this site and available with TestDriven.Net build 2.0.1438.

What's New? Loads... more than I'm going to mention here (see the release notes for the full list). Let's look at the options dialog:


Apart from the new tabbed appearance there are some other new options to note here:
  • Namespaces will now be "flattened" by default which is the same appearance as Reflector or the VS.Net 2005 class viewer (see screenshot below).
  • For the VB.Net crowd out there you can now exclude the "My" namespace by default which NCover includes in the results, distorting your coverage percentages.
  • An optional threshold for the number of unvisited lines in a method. Acts in a similar way to the existing % threshold feature but just another way of convincing yourself things aren't as bad as they may first seem...
Probably the most requested feature I have had is the ability to customise the colours - so here you go! There is more to come in the future on this but for now you can change:


Moving onto the display itself, you can see some new menu options in the tree view and the default view of a "Flat" namespace hierarchy below:


The two new right-click menu options are:
  • Remove from results - does what it says on the tin. This option is context aware so you can use it to "prune" your coverage tree - be it to remove a unit test assembly as shown above or exclude a class. After the remove action is selected NCoverExplorer recalculates the percentages in the tree.
  • Collapse All - collapses every single coverage node in the tree.
Next is the statistics pane. This has had quite a revamp (my thanks to Andrzej Kaczmarczyk for his suggestions). Clicking on a class node now produces a summary of all the methods and the number of times they were executed (shown below). The columns are now sortable as well. This offers a rudimentary form of code profiling analysis.



The final new feature I think worth highlighting is that by default NCoverExplorer now tries to restore your cursor position / current selected node when reloading a coverage file. So when used in conjunction with the superb TestDriven.Net "Test With... Coverage" feature you no longer need to keep re-expanding the nodes to get to where you last were...

I look forward to your feedback with any additional suggestions, comments... or even dare I suggest new bugs! This release has made quite a dent in the features todo list but there's still a number of things on it yet...

Also very much worth noting - the latest NCover beta release 1.5.3 is now available - highly recommended for the bug fixes alone. Thanks Peter!

Download the latest NCoverExplorer versions from here.

Release Notes
FAQ

Tuesday, February 07, 2006

NCoverExplorer... Feedback

As promised the latest build of TestDriven.Net with NCoverExplorer 1.3 included is now available... with this build of TestDriven.Net it will re-use the same NCoverExplorer instance each time you choose "Test with... Coverage".

We have also been trialling FogBugz as a way of tracking features, bugs and questions from everyone for both TestDriven.Net and NCoverExplorer. So far it looks pretty good - ease of use through simplicity is obviously it's goal and it does that well.

If you do have anything you want to report to us, the url (for the next 40 days during the trial) is here

Monday, February 06, 2006

NCoverExplorer... v1.3

I've just finished putting the finishing touches on the latest release. If you want to download it straight away, you can find it in the locations at the bottom of this post. I believe Jamie Cansdale will be announcing availability of the next release of TestDriven.Net within the next 24 hours or so with this bundled...

What's new? Well as you can see in the screenshot below there's a couple of changes in the treeview. For a start, there is now a new root level node representing the coverage file, giving you a total for coverage of all it's children. In addition by default the coverage is now grouped by module (usually the same as the assembly). Great for large projects...


From a code navigation viewpoint a couple of convenience features have been added. The "Expand Covered" option gives you a quick way to open up all nodes with coverage - useful for if you have just executed TestDriven.Net with "Test with... Coverage" running a small subset of tests.

You can also see an "Edit in VS.Net" option - you can right-click either on the tree or within the source code pane and have your cursor appear at the same place in the source code in your Visual Studio.Net IDE...

A number of other tweaks and enhancements were made (such as reusing the same NCoverExplorer window when run from TestDriven.Net) - you can read the full details in the release notes.

A quick note of thanks to everyone who has blogged, e-mailed or otherwise commented and supported NCoverExplorer. I've got a load of more features on my list to come over the next few weeks (time permitting) - any other ideas are also welcomed either via the blog, the TestDriven.NET Users group
[Update] or preferably FogBugz during our trial over the next 40 days.

Download the latest NCoverExplorer versions from here.

Wednesday, February 01, 2006

TestDriven.Net Now Supports NCover 1.3.3

As I hinted at previously Jamie Cansdale has just announced public availability of a new build which supports NCover 1.3.3 - good news for those of us who are still ploughing the BCL 1.1 fields without 2.0 installed. Jamie is clearly setting dangerous precedents in customer service by way of his superb "apology" - suggestions welcomed for my:

  • list of ways I can make him think something is his fault;
  • list of new features he shall feel obliged to subsequently implement;
Actually I think it was quite an intelligent default rule on the part of his firewall to keep me away from his TestDriven.Net source repository while he sleeps, given my "immense" (cough) knowledge of SVN...

In other news, Scott Hanselman released his latest Hanselminutes podcast (about Continuous Integration tools) where he gives a big thumbs up to TestDriven.Net and was kind enough to mention yours truly in there as well in respect of the NCoverExplorer integration - cheers mate! I'm so chuffed I'd like to send the audio file to Mum & Dad too - but there's ever such a slight chance they might not understand it...