我们通过命令行工具以及我们的CruiseControl.Net单元测试生成PartCover报告。这将生成一个xml文件,该文件在cruisecontrol仪表板上很好地显示结果。其中包含的xslt转换仅显示单个类中的覆盖率百分比。我们想确切地知道哪些行没有被覆盖。问题在于,当我们在PartCover浏览器中打开报告并双击一个方法时,它不会显示我们的cs文件。我知道PartCover浏览器能够向您显示这些文件,原因如下。
以下是PartCover浏览器的屏幕截图,其中的代码行显示:http://kjkpub.s3.amazonaws.com/blog/img/partcover-browse.png。
这些信息看起来应该可供浏览器使用,因为报告包含以下内容:
<Method name="get_DeviceType" sig="Cathexis.IDBlue.DeviceType ()" bodysize="19" flags="0" iflags="0"> <pt visit="2" pos="0" len="1" fid="82" sl="35" sc="13" el="35" ec="14" /> <pt visit="2" pos="1" len="4" fid="82" sl="36" sc="17" el="36" ec="39" /> <pt visit="2" pos="5" len="2" fid="82" sl="37" sc="13" el="37" ec="14" /> </Method>
还有这个:
<File id="66" url="D:\sandbox\idblue\idblue\trunk\software\code\driver\dotnet\Common\AsyncEventQueue.cs" />
我想要做的就是查看我的测试用例中没有覆盖哪些代码行,而不必弄清楚上面的xml试图告诉我什么。
感谢提前回复的人。
发布于 2010-10-14 03:07:20
我弄明白了为什么cs文件不能显示。xml文件中的路径不正确,因为我们的测试项目是在与partcover所在的机器不同的机器上构建的。(partcover可能必须从pdb文件生成.cs文件路径?)一旦我搜索并替换了文件,将subversion位置的基目录切换到另一台机器上的基目录,一切都很好。
https://stackoverflow.com/questions/3866897
复制相似问题