Our salute to everyone covering their .NET code!
We have several dotCover-related news items this time: what’s new in dotCover 1.2; how dotCover is going to evolve mid-term, and how to make sure you’re eligible for subsequent dotCover versions.
dotCover 1.2 EAP
First of all, we have recently started Early Access Program for dotCover 1.2. This is a maintenance release that could be of interest to those of you who are using dotCover with massive solutions and experiencing performance and memory issues.
- Improved performance of report generation and coverage highlighting. This doesn’t have anything to do with creating a snapshot but rather with its further processing. We have clocked moderate performance improvements in generating reports for ReSharper solution. We’d be happy to know whether this also gets things smoother for you if you’re using dotCover on large solutions.
- Reduced HTML report size: both in Visual Studio and in the console runner. Specifically, we have managed to reduce the size of ReSharper report 1.5 times, making it 10 Mb lighter.
- Reduced memory consumption during snapshot merge. This is based on internal feedback but may very well make life easier for everyone who has ever encountered OutOfMemory exceptions on merging snapshots.
- Miscellaneous bug fixes and minor improvements: see this YouTrack query for complete release notes.
One more thing about this EAP is that it’s prepared to support ReSharper 6.1 that we’ll hopefully make available for early access in two weeks’ time.
dotCover Subscription Renewal Licenses Available
It’s now been a year since dotCover 1.0 was released, and since a dotCover license includes one year of free upgrades, the free upgrade period has just expired for some dotCover users. If you’re using a recent dotCover version and there’s a “license not acceptable” message in your dotCover License Information dialog box, that means you’re no longer eligible for free upgrades:
If you would like to be able to upgrade to forthcoming versions of dotCover (see below for some of the reasons why you’d love to) for another year, you should purchase a 1-year upgrade subscription renewal license, which is worth (roughly) 50% of the current initial license price — that is, $75 or equivalent for commercial license upgrade subscription renewal, and $39 or equivalent for personal license upgrade subscription renewal.
To renew your upgrade subscription, refer to one of the two e-mail reminders that we’re sending out when a subscription is going to end soon, and as soon as it has ended. If you haven’t received any reminder e-mails, please go to dotCover buy page and use the new “Upgrade subscription renewal” license option in either “Commercial license” or “Personal license” column:
For detailed upgrade subscription terms, please proceed to this page.
You will hardly want to purchase any upgrade subscriptions without knowing in which directions the product is going to evolve. Here’s a quick roadmap highlighting features that we’re going to make available in new releases during the year ahead:
- Running and measuring coverage of unit tests without ReSharper. Current versions of dotCover rely heavily on ReSharper unit test runner (and its framework-specific plug-ins) for running and measuring coverage of unit tests. You just can’t execute unit test coverage without integrating dotCover into ReSharper. This isn’t a problem for ReSharper users but there’s no way to reach a wider audience until dotCover provides its own test runner — and it will do so! Unit test runner, currently ReSharper’s exclusive asset, will soon be available in both ReSharper and dotCover, making unit test coverage possible without ReSharper’s assistance.
- More built-in navigation. ReSharper provides more than unit test runner to dotCover: certain navigation actions in dotCover are only available if ReSharper is installed in Visual Studio. For example, you can’t currently navigate from Coverage Results Browser to Visual Studio text editor using the keyboard: this is only possible from the Coverage tab in ReSharper’s Unit Test Sessions. Inconveniences like this will also be removed as dotCover gains more intelligence from ReSharper.
- Priority coverage suggestions. We’ll train dotCover to gather metrics such as cyclomatic complexity in order to suggest which parts of your code base should be covered with unit tests in the first place — thus evolving from formal coverage statistics to a more insightful and task-efficient approach.
- Coverage filtering by attributes. dotCover will enable you to create attribute filters. It will skip measuring coverage of code marked with attributes you’re listed. This will help prevent wasting time on measuring coverage of auto-generated code and any other kinds of code that you don’t want dotCover to process. In configuring filters, you’ll be able to use both common attributes like
ExcludeFromCodeCoverageAttribute, and any other attributes used on assembly, method, or class level.
This is not all features that we’d like to implement in near future — rather, those that we’re confident in being able to bring to life. On the other hand, we don’t have an ultimate list of expected changes, and as usual, you can throw your suggestions via dotCover issue tracker or discussion forum, and we’ll take your input into account as we schedule our development process.