DotCover finds 0 statements to inspect

I run dotcover Console Runner v1.1.249.8 with the following filter that intends to analyze only the file named "ceo.exe":

<Filters>

<IncludeFilters>

   <FilterEntry><ModuleMask>ceo</ModuleMask><ClassMask>*</ClassMask><FunctionMask>*</FunctionMask></FilterEntry>
</IncludeFilters>
</Filters>


With that filter, I get the following result:

<?xml version="1.0" encoding="utf-8"?>

<Root Name="Root" CoveredStatements="0" TotalStatements="0" CoveragePercent="0" ReportType="XML" DotCoverVersion="1.1.249.8" />


If I change the ModuleMask to "Ceoimage" with the intent of covering statements in the file named "Ceoimage.dll", I get output that starts with the following:

<?xml version="1.0" encoding="utf-8"?>

<Root Name="Root" CoveredStatements="2190" TotalStatements="2955" CoveragePercent="74" ReportType="XML" DotCoverVersion="1.1.249.8">


Are there any restrictions to the kinds of files DotCover can analyse? Can it not cover executables? Can it not cover files with three letters? Those seem highly unlikely, but I am completely stumped by what it does not like about this file.

5 comments

Hello,
Thank you for the feedback.
Please note that you are specifying module filters. One assembly can contain several modules.
Besides that module name can differ from assembly name, for example when you have manually renamed the file after build.
We have plans to simpify this behaviour and replace module filters with assembly filters.
Currently as a workaround you can try the following: run coverage analysis with all data included (without coverage filters),
find out the exact module name you are interested in and modify filters accordingly.

0

Hi Ruslan. Thanks for replying.

I tried running it without any filters and the "ceo" assembly never showed up. Any advice?

0

And does the assembly have a corresponding PDB?

0

Wow. Just wow. I have been beating my head against the wall for a couple of months now and the solution was so ... simple.

I don't think the project's configuration changed, so does that mean the fact that release builds must produce PDBs was only recently introduced?

Thanks.

0

Well, presence of PDBs is a compulsory requirement :)
Without them dotCover doesn't get sufficient info for the coverage analysis.
It is not something new, it was there from the very beginning.

0

Please sign in to leave a comment.