【发布时间】:2011-08-09 16:06:36
【问题描述】:
让 OpenCover 在我的机器上运行后,下一步是让它与构建服务器一起使用。
我一直在尝试将 OpenCover 与 Bamboo Build Server 上的 MSBuild 集成。在构建解决方案后,我已将 Build.proj 修改为如下运行 OpenCover:
<Target Name="TestAndCodeCoverage" DependsOnTargets="Build" >
<Message Text="Executing Unit Tests and running OpenCover to check code coverage..." />
<MakeDir Directories="Coverage" />
<Exec Command='"C:\Program Files (x86)\OpenCover\OpenCover.Console.exe" -target:"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe" -targetargs:/testcontainer:"TestProject\bin\Release\TestProject.dll" -filter:+[*]* -output:Coverage\CodeCoverageResults.xml -register:user -mergebyhash' />
</Target>
“Coverage”目录在解决方案根目录(构建期间的工作目录)中创建。测试已运行并全部通过,但在构建日志中显示Committing.... 之后(将在命令行中显示的内容),没有生成任何结果并且构建继续执行下一个任务(使用 ReportGenerator 创建报告 -这会失败,因为没有创建 CodeCoverageResults.xml)。
在构建机器上的命令行中运行相同的命令时,一切都会按预期运行,并且可以通过 ReportGenerator 生成报告。
其他人有同样的问题吗?我是否需要像this PartCover 示例那样注册等效的 dll?
【问题讨论】:
标签: msbuild mstest code-coverage bamboo opencover