我正在使用 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/