TFS 发布代码覆盖结果任务与 OpenCover 不工作
TFS Publish Code Coverage Results Task With OpenCover not working
运行 基于 TFS 2015 On Permises 和我的代码覆盖率结果任务记录警告,指出未找到覆盖率数据。但是在构建过程中读取了 xml 文件。
我已经按照图片中的描述配置了发布代码覆盖率结果:
生成期间的日志显示文件已生成并已读取。
并且在所有文件的末尾都这样写:
我期待在构建中看到一些代码覆盖恢复数据,但事实并非如此:
感谢@DanielMann,提醒很有帮助。我正在使用 openCover,但我不了解 OpenCover 有自己的格式。现在我更改我的 Cake 脚本以支持从 openCover 到 Cobertura 的转换。
我在蛋糕脚本中添加了 headers,如下所示:
#addin "nuget:?package=Cake.OpenCoverToCoberturaConverter&version=0.1.1.2"
#tool "nuget:?package=OpenCoverToCoberturaConverter&version=0.3.2"
然后在成功执行测试后,我 运行 我的代码覆盖率是这样的:
OpenCover(tool => {
tool.XUnit2($"{testsPath}/**/**/**/**/{projectName}.dll",xUnit2Settings);
}, new FilePath("./OpenCoverCoverageResults.xml"),openCoverSettings);
OpenCoverToCoberturaConverter("OpenCoverCoverageResults.xml", "CoberturaCoverageResults.xml");
ReportGenerator($"CoberturaCoverageResults.xml", $"{outputDir}/Reports");
运行 基于 TFS 2015 On Permises 和我的代码覆盖率结果任务记录警告,指出未找到覆盖率数据。但是在构建过程中读取了 xml 文件。
我已经按照图片中的描述配置了发布代码覆盖率结果:
生成期间的日志显示文件已生成并已读取。
并且在所有文件的末尾都这样写:
我期待在构建中看到一些代码覆盖恢复数据,但事实并非如此:
感谢@DanielMann,提醒很有帮助。我正在使用 openCover,但我不了解 OpenCover 有自己的格式。现在我更改我的 Cake 脚本以支持从 openCover 到 Cobertura 的转换。
我在蛋糕脚本中添加了 headers,如下所示:
#addin "nuget:?package=Cake.OpenCoverToCoberturaConverter&version=0.1.1.2"
#tool "nuget:?package=OpenCoverToCoberturaConverter&version=0.3.2"
然后在成功执行测试后,我 运行 我的代码覆盖率是这样的:
OpenCover(tool => {
tool.XUnit2($"{testsPath}/**/**/**/**/{projectName}.dll",xUnit2Settings);
}, new FilePath("./OpenCoverCoverageResults.xml"),openCoverSettings);
OpenCoverToCoberturaConverter("OpenCoverCoverageResults.xml", "CoberturaCoverageResults.xml");
ReportGenerator($"CoberturaCoverageResults.xml", $"{outputDir}/Reports");