问题标签 [partcover]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3422 浏览

.net - 如何使用:PartCover .NET 4 和 NUnit 2.5.6

假设我有测试程序集(符合 NUnit)App.Test.dll 和一个要测试的库 App.dll。

如何使用 PartCover 和 NUint 进行代码覆盖率分析?

0 投票
2 回答
907 浏览

c# - NUnit 2.5.6 + PartCover 2.0/4.0 = 我的课程未显示

总结:我可以运行单元测试和代码覆盖,但报告只包括 NUnit 类,而不包括我的应用程序类。

我过去曾成功使用过 PartCover。这次不是这样。我尝试了最新的 PartCover (4.0),降级到下一个最新的 (2.0),都使用 NUnit 2.5.6。

我创建了一个简单的 .NET 4.0 类库(也尝试使用具有类库项目的 Web 应用程序),在某个命名空间中有一个类,在另一个类中的另一个库中有两个测试方法。

NUnit/PartCover 安装正确;我可以在 NUnit 和 PartCover 中运行 NUnit 测试(我可以看到它们在运行并说“2 通过”),但报告只显示了 NUnit 命名空间。(是的,我使用 +[ ]作为我的覆盖规则。)

有任何想法吗?尽管我很喜欢 NUnit,但我希望看到我自己的课程的报道 :o)

而且我还尝试对齐 test-DLL 和 code-DLL 命名空间,但无济于事。

编辑:我尝试从一年前重新运行我以前工作的代码覆盖示例;所有测试都运行,但实际项目名称空间不会出现。这里有一个提示,这似乎暗示它取决于您使用的 NUnit 版本:http: //sourceforge.net/projects/partcover/forums/forum/605222/topic/3308367(是的,我已经尝试过 appdomain-报告复选框)

我已经尝试过 NUnit 2.5.5.x 和 2.5.6.x 并且都给了我相同的结果。

编辑:似乎官方 4.0 版本的这个分支似乎可以工作,虽然是零星的(谷歌的 PartCover 分支,我不能添加更多的超链接)

0 投票
1 回答
264 浏览

partcover - PartCover 浏览器不打开代码文件

我们通过命令行工具和 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 试图告诉我什么。

提前感谢任何回复的人。

0 投票
1 回答
655 浏览

.net-4.0 - PartCover 4.0 仅报告 NUnit 库

我在 Windows 7 (x64) 上使用带有 NUnit 2.5.8 的 PartCover 4.0(来自sourceforge 页面,最新的开发版本)。PartCover 运行正常(使用 -x86.exe),但它只显示了各种 NUnit 包的覆盖范围——而不是我自己的源代码。

我最初没有使用 CorFlags.exe,因为我没有收到 COM 错误;反正我试过了,没啥区别。

我查看了有关 Stack Overflow 的所有其他问题,但似乎没有一个适用;我使用的是 PartCover 4.0,我的名字中没有空格,我的覆盖规则是最广泛的 ( +[*]*),并且我运行了 CorFlags.exe。

我错过了什么?

0 投票
1 回答
221 浏览

continuous-integration - 将多个 PartCover 报告合并到 CruiseControl.Net 构建日志中

作为 CruiseControl.Net 项目的一部分,我运行了多个组件的一系列集成测试。然后我将 PartCover 报告合并到整体构建报告中,问题就来了:每个报告都有从 1 开始的程序集 ID。结果,我只获得了一个程序集的每个程序集的统计信息,而这些统计信息显然是无效的。

我试图找到一种方法来为 PartCover 提供特定的程序集 ID 种子,但没有成功。所以我目前唯一的想法是在合并报告之前预处理报告,以将例如 10、20、30 等添加到程序集 ID。

有人知道解决这个问题的更聪明的方法吗?

0 投票
1 回答
446 浏览

64-bit - 为什么要在 TeamCity 中设置代码覆盖率?

我正在使用 Teamcity 6.0,并希望将代码覆盖率添加到我们的 NUnit 测试中。

PartCover 一直是个大问题,因为它没有在 x64 服务器上运行,所以现在我必须自己去 git 和构建它:(

另外,jetBrains,如果你知道 xslt 坏了,让我更容易修复它.

其他人有 PartCover 工作吗? 也许这可能会有所帮助: http: //www.jeremyskinner.co.uk/2010/07/23/using-teamcity-with-partcover-4/

0 投票
1 回答
134 浏览

mstest - 让 PartCover 包含一个名称为“System”的程序集

我正在尝试使用 PartCover (v.2.3.0.36319) 来测量在 MSTest 中运行的单元测试的程序集的代码覆盖率。除了一个名为 SystemLogger 的程序集之外,我可以获得所有程序集的成功报告。我试过这些规则:

这些都不会强制 PartCover 包含该 dll。查看运行日志,我注意到似乎有几个内置排除项:

我从未指定其中任何一个,但可以说它阻止我的 dll 被包含在内似乎是合理的。有什么方法可以强制 PartCover 包含我的程序集而不重命名它?

0 投票
1 回答
219 浏览

ccnet-config - 在 64 位机器上运行 partcover 会生成 1KB 的输出文件

当我在 32 位机器上从控制台运行 partcover 时,我得到了 5 mb 的文件作为输出生成。但是当我在 64 位机器的命令提示符下运行相同的命令时,我得到 1 KB 的文件作为输出。

我用过

CorFlags.exe PartCover.exe /32BIT+ /Force
CorFlags.exe PartCover.Browser.exe /32BIT+ /Force

但无法产生正确的输出。我正在使用 Nunit 2.5 和 Part Cover 2.3

0 投票
1 回答
304 浏览

nant - PartCover 生成空输出文件

我目前正在尝试为我们的 TeamCity 设置创建一个 Nant 任务,以便我们的单元测试通过 Gallio 运行并被 PartCover 覆盖。任务如下所示:

测试正在运行,我们可以在 TeamCity 中看到这一点,并且生成了一个 Coverage.xml 文件,但为空。里面只有一行。

变量的输出:-

  • ${Paths.Tools}:C:\Robinson\Trunk\
  • ${Tests.TestedAssemblyName} :DLL 的名称
  • ${AssemblyToTestLocation} :DLL 的路径

我错过了什么吗?

编辑 TeamCity 应用程序在 Windows Server 2003 R2 服务器上运行,所有执行工作的构建代理当前都在 Windows XP 系统上运行,所有 32 位安装。

0 投票
1 回答
226 浏览

partcover - Partcover:通过命令行排除多个命名空间

我正在使用Partcover生成代码覆盖率统计信息,并希望使用命令行参数--exclude排除多个命名空间。

我无法指定要排除的多个命名空间,有人可以建议怎么做吗?显然,单个命名空间掩码运作良好。