c# - 如何使用 Jenkins 计算 NCover 的代码覆盖率?

标签 c# jenkins code-coverage jenkins-plugins ncover

我正在使用 C# 编写 Windows 应用程序。

使用 Jenkins,我创建了一个将执行以下任务的作业。
1.使用msbuild构建应用程序
2.使用nunit-console.exe测试单元测试用例
3.使用 NCover 计算代码覆盖率。 (问题)
4.稍后使用Nant插件发布应用

任务 1、2 和 4 工作正常,而 3 有问题。

有人可以阐明这件事吗?

这是我用来找出覆盖率的批处理文件

C:\Program Files\NCover\NCover.Console.exe" "E:\Myapp\test.exe" -h //x "E:\Newfolder\coverage.xml

批处理文件是在Jenkins中执行的,我们可以在任务管理器中看到Test.exe,我需要的是执行Nunit测试用例时html格式的代码覆盖率,而不需要运行我的text.exe

D:\Set Up\Nuint\NUnit-2.6.2\bin\nunit-console.exe" "E:\Myapp\test.sln" /xml="E:\Newfolder\TestResult.xml 

这是我用来测试测试用例的批处理命令,我需要知道执行测试用例时的代码覆盖率,但在我的例子中,我的 test.exe 被执行,NCover console.exe 开始监控我的测试。计算覆盖率的exe

我试过添加

C:\Program Files\NCover\NCover.Console.exe"在 "D:\Set Up\Nuint\NUnit-2.6.2\bin\nunit-console.exe""E:\Myapp\test.sln"/xml="E:\Newfolder\TestResult.xml ,构建成功。 并在控制台 o/p 中找到一些覆盖率数据,如

执行时间:92.4688 秒 符号覆盖率:43.72% 分支机构覆盖率:22.70%

并创建了一个 coverage.nccov 文件。但我需要以 html 格式创建/显示覆盖率报告。

最佳答案

您可以使用 NCover plug-in或开始计算的构建后任务。

对于第二种变体,我们主要使用一个简单的批处理文件来启动操作(在您的情况下是 ncover 计算)。这个批处理文件将由 jenkins post-build-task 调用。

编辑:

要获取 HTML,您可以通过(查看 here):

NCover.Reporting Coverage.xml //or FullCoverageReport:Html //op "C:\Coverage Report"

关于c# - 如何使用 Jenkins 计算 NCover 的代码覆盖率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18180434/

相关文章:

jenkins - 模拟 Jenkins 管道步骤

ruby-on-rails - Simplecov 覆盖率报告似乎遗漏了某些行

c# - JavaScript 中的 Div 可见性

c# - 如何通过使用日期作为 Elasticsearch 的字符串比较来获取文档?

linux - TF 命令行可执行文件未显示在 Jenkins 上

asp.net - 棕地 ASP.NET 应用程序的有用/现实的代码覆盖率目标

php - 使用 Jetbrains PHPStorm 覆盖 PHPUnit 0%

c# - 使用 XPerf 查看事件数据?

c# - switch cases .NET 中的代码优化

git - 'Poll SCM' Jenkins 功能如何知道存储库和分支轮询?