Forgot Password?Register
Log In Download
19
Feb '09
by Stephen Ward

NCover v3.0.15 Released!

Features and Improvements

  • Up to 6x less memory use when creating the FullCoverageReport.
  • 33% speedup when creating the FullCoverageReport.

Changes

  • Updated the NCoverReporting30.xsl file to work with CC.NET by default. Consult the updated documentation and this blog entry to set up CC.NET with the new xsl.

Bug Fixes

  • NCover.Reporting now recovers from invalid regular expressions and prints an error message.
  • Fixed null references exceptions that could happen when creating a FullCoverageReport with trends when there were holes in the trend data.
  • Fixed misc. errors in the documentation.
  • The "Script Helper" button in NCover Explorer is now enabled when no coverage file is open.

View Comments

18
Feb '09
by Joe Feser

How to verify your CC.NET report file and optionally send a good support request

A few customers are reporting integration issues with CC.NET v1.4+ and NCover v3.0. Our last blog post addressed the issue with the graph images not displaying correctly. This blog post is going to expand on the other integration issue that people are experiencing, which is the report showing N/A and NAN% for the coverage percentages.

The first thing you need to do is look at the url for the report. An example url would look like this

http://server/ccnet/server/local/project/NCover+Tests/build/log20090218054153Lbuild.2.xml/NCoverBuildReport.aspx. You want to look at the part right after /build/, in our case “log20090218054153Lbuild.2.xml”, this is the artifact that is being transformed using the NCover3XmlReport.xsl file.

In order to determine the location of this file, look in your ccnet.config file for the following tag for your project: <artifactDirectory>D:\ccnet\artifacts\ncover3</artifactDirectory>

This is the folder that will contain the artifact. Open this file in a text editor and you should notice the root node should look something like this: <cruisecontrol project="NCover Tests">

Under this node, you may see a tag called “buildresults”

<buildresults>
  <message>NCover Reporting Complete v3.0.14 x86 (Administrator)</message>
  <message>Merging and Reporting for NCover</message>
  <message>Copyright (c) 2007 - 2009 Gnoso Inc.</message>
  <message>http://www.ncover.com&lt;/message&gt;
  <message>Wrote xml report to 'D:\ccnet\artifacts\ncover3\symmarymodule.xml'</message>
  <message>Execution Time: 3,453 ms</message>
</buildresults>
This is the output that came from ncover.reporting.exe during the run process. The next section you should see is the information used for the transformation
<trendcoveragedata xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
  <en>::coverage.xml::</en>
  <stats acp="95" afp="80" ccavg="2.44" ccmax="106" ex="0" ei="1" cc="2.44,106" ubp="8098" udp="0" ul="11485" um="3036" usp="11156" vbp="8503" vdp="0" vl="10667" vsp="10738" mvc="30211284" vc="1" vm="3897" svc="401794353" />
If you do not have the <trendcoveragedata> node in your artifact, there is an error in your ccnet.config file, please read the readme.txt file or this following url. If all of this information exists, and your <trendcoveragedata> contains at least one <doc> element and one or more <mod> elements, then you should contact support (http://www.ncover.com/support/ticket) to see if we can help you once you verify the following items. 1. If you are receiving NAN% or N/A% for Symbol coverage, first verify that at least one of the <stats> nodes has non-zero values for the usp and vsp attributes. If all of the vsp and usp attributes are 0 (zero), the PDB symbols were not available at the time you ran coverage. The vl and ul (visited lines and unvisited lines) will also be 0 if PDB symbols were not available. 2. If you are receiving N/A for Cyclomatic Complexity, verify that the ccavg and ccmax numbers are not 0. If they are and you are running the Complete edition of NCover, you may have not included Cyclomatic Complexity coverage when you ran coverage. Please verify your options for the //ct flag. By default we capture all of the information allowed by your edition. If you passed in flags, you have limited the data that we are going to collect.

View Comments

18
Feb '09
by Joe Feser

My images do not show up in CC.NET what do I do?

There has been some confusion as to why the images are not showing up in the cc.net dashboard. A few people have made specific changes to the xslt file to resolve the issue. The underlying issue is the CC.NET path for the dashboard does not map to an actual path on the file system. Using Firebug, we determined the actual issue was the server is returning an HTTP 500 due to the fact that the relative path does not exist on the server.

In order to resolve the confusion, we have modified the xslt file to handle CC.NET out of the box. By following these few steps, you will be up and running in under five minutes.

By default, cc.net is installed in the "C:\Program Files\CruiseControl.NET" folder. Inside that folder, you will find a folder called webdashboard. This folder maps to the ccnet virtual web that is created when you install cc.net. Three images are released with NCover, r.png, g.png, and y.png, these files are located in the "C:\Program Files\NCover\CC.Net" folder. If you copy these three files to the "C:\Program Files\CruiseControl.NET\webdashboard\images" folder, and replace the NCoverReporting30.xsl in the "C:\Program Files\CruiseControl.NET\webdashboard\xsl" folder, your images will begin to appear. If you are using the email report feature of cc.net, you will also need to replace the file located at "C:\Program Files\CruiseControl.NET\server\xsl".

If by some chance, you do not want to place the images in that folder, you will need to modify the xslt file to match the path you have placed the images. This can be done by modifying the "baseimagepath" variable in the xslt file

<xsl:variable name="baseimagepath" xml:space="preserve"><xsl:choose>
               <xsl:when test="not($fulltags)">/ccnet/images/</xsl:when>
               <xsl:otherwise></xsl:otherwise></xsl:choose></xsl:variable>
All you need to do is change the path located in the when condition with an absolute path of your choice. This is a web path and not a file path. It is also absolute from the root of the cc.net server (webdashboard). Your install may not be on the C drive, it may be D, E... The easiest way to determine the install path of CC.NET is to go to the Internet Information Server Manager, find the CC.NET virtual directory and right click the item and go to the Home Directory tab. Please consult your Windows help file or system admin if you are having trouble determining the root location. You can also use the iisweb /query option on the command line. Choose yes if it asks you to register the cscript.

C:\>iisweb /query
Connecting to server ...Done.
Site Name (Metabase Path)               Status  IP              Port  Host
=========================================================================
Default Web Site (W3SVC/1)              STARTED ALL             80    N/A
Microsoft SharePoint Admin    (W3SVC/2) STARTED ALL             7617  N/A

Find the name of the default web site or the name of the website that cc.net is installed. In our case it is W3SVC/1

C:\>iisvdir /query "W3SVC/1"
Connecting to server ...Done.
Alias                        Physical Root
========================================================================
/_vti_bin                    C:\Program Files\...\isapi
/CCNET                       C:\Program Files\CruiseControl.NET\webdashboard\
/ServiceModelSamples         C:\inetpub\wwwroot\...

This xslt is part of the v3.0.15 release (or later) which is available on the download page. If you would like us to send you a copy of the file instead, please email support@ncover.com.

View Comments

10
Feb '09
by Joe Feser

"Early Bird" Enhancements Make NCover v3.0.13 Faster!

We continue to listen to our customers suggestions and we are proud to provide you with our latest release. One of the biggest requests from our customers was the ability to disable highlighting the language keywords (public, sub, int), and v3.0.13 provides you with this option. The option is located under "Managed options" in the "Other Options" section. Check the "Disable Source Code Syntax Highlighting option" and all new opened files will no longer provide syntax highlighting. Your covered and uncovered code will continue to be highlighted.

Recent security changes to our application require you to download the latest version. All existing versions will expire on February 14, 2009.

BETA Security Removed

  • Inclusion of beta security protocol in release candidate requires removal of v3.0.11 and download and installation of v3.0.13.

Features and Improvements

  • //CCF and //RDF Flags are now supported in the MSBuild and NAnt Tasks.
  • All out of sync files will now display the line number highlighted.
  • Performance improvements in the source code tab when changing themes.
  • Added the ability to disable keyword syntax highlighting in the code preview.
  • Trends are now normalized and will show as missing data on the graph. This will provide much greater insight over items that have been added, removed or failed.
  • Improved readability of plot points for very large data sets. The intersect points will now scale to size, keeping the points from overlapping.

Bug Fixes

  • Fixed issue with out of sync documents. We now highlight the line number that we know is out of sync
  • Multi line symbols no longer report out of sync on empty lines.
  • Warn If missing source code would not provide a way to show the source file if cancel was chosen.
  • Rebase Paths dialog would blow up if you caused a circular replacement (point the replacement path to the same bad file).
  • Failed builds no longer show up in the trend graph.
  • Fixed issue with nested classes not displaying the correct coverage percentage.
  • Fixed a node state issue for nested classes.

Changes

  •  Failed builds no longer show up in trend graph.
Download Now

View Comments

06
Feb '09
by Daniel Waldschmidt

The Battle on Bad Code Continues

Today, Kathy Richards from Redmond Developer writes about how we fill a nice partnership position with Microsoft Visual Studio in the growing role of code quality analytics:


Earlier this week, NCover, a .NET specialist in code coverage analysis, released version 3 of its flagship product -- available in a community edition and the more advanced commercial products. Code coverage, often employed in Agile and test-driven development, makes sure the test cases touch all of the code by measuring how many times each line of code is executed. NCover version 3 improves coverage loading performance, according to the company, and adds new metrics such as cyclomatic complexity and method visit coverage.

http://reddevnews.com/blogs/weblog.aspx?blog=3426

View Comments

04
Feb '09
by Daniel Waldschmidt

Laurent Kempe takes the first dance...

"Ask and ye shall receive...." sayeth the gospel of NCover.

And Laurent asked...

If you don't know Laurent Kempe, then go meet him... He's "one of the TechHead Brothers", a bad-ass techie, and the first official licensee of NCover Complete.

http://weblogs.asp.net/lkempe/

Everyone not named Laurent: "YOUR CODE'S ARE ON THE WAY!

It all went down on Twitter


The Twitter Trailing Thoughts @DanWaldo Ok now I see what you were talking about with WPF! Really nice, let's try it! It is late here, I think I will be late to bed! @DanWaldo Yeah ! Saw it and just registered! First to Get license for NCover 3 :) Champagne :)

View Comments

04
Feb '09
by Daniel Waldschmidt

Aliens Have Landed?

It started late last night and ended early this morning... and will change every day from here on out. With plenty of hype and a sexy new redesign, our international clients already started snapping up licenses 30 minutes after the new product launched.

And so the madness begins.... (and not without reason)

We call it NCover Complete!

David Worthington at SD Times summed it up nicely with his article about us:


Code coverage tool digs deeper into .NET analysis By David Worthington

February 3, 2009 — Gnoso, a code coverage tool maker, has updated its NCover code analysis tool with broader analytics and new reporting capabilities that help development managers assess .NET code quality.

NCover Complete 3.0, released yesterday, has several more coverage points, including branch coverage, cyclomatic complexity (or conditional complexity), and method visits, said Daniel Waldschmidt, Gnoso's Technology Evangelist for code coverage tools.

With this data, NCover can create trend data from its coverage files and can automate coverage from within Microsoft Visual Studio Team Foundation Server. It is also interoperable with other code coverage tools, including Bullseye for native code and Clover for Java, said Waldschmidt.

Additionally, NCover's command line utility is now able to perform over 30 different activities, Waldschmidt added.

"Customers can create a workflow that takes .NET assemblies and passes them through NCover and other feedback loops," he said.

A greater variety of code quality reports can now be created. Previous versions produced only a single report for managers; NCover 3.0 produces over 22 reports, such as a build's 20 most uncovered methods and its five most complex assemblies, Waldschmidt noted.


It's more than than the future of software development -- it's the dawning of a better methodology. This means safer software for consumers and the ability for big business to make products MORE profitable. And that's only the start.

Gotta go, my phone's ringing.

View Comments