如何集成dotcover和Jenkis。
有PDF或指南吗?
我能够通过命令行运行点覆盖,它会生成测试结果。但是,当我尝试通过Windows batch命令在Jenkins中运行时,它会抛出一个错误
命令'cover'不支持2个未命名的参数
键入“dotCover帮助”以供使用。
缺少什么吗?
最佳答案
我使用Jenkins的dotCover。我有多个需要测试的DLL,因此我的工作将为每个DLL执行dotcover,合并测试快照,并生成HTML报告。我的Jenkins设置包括“HTML Publisher插件”和“NUnit插件”
首先获取命令行工具,并将其放在Jenkins服务器上:
在Windows批处理命令中运行命令行工具:
我很想尝试将参数传递到命令行,所以运气不佳,所以我使用了dotCover的xml设置(dotCoverTRAEngineTest.xml的内容):
<?xml version="1.0" encoding="utf-8"?>
<CoverageParams>
<TargetExecutable>C:\NUnit-2.6.3\bin\nunit-console.exe</TargetExecutable>
<TargetArguments>C:\Jenkins\workspace\TRA.CodeCoverage\TRAEngine\TRAEngineTest\bin\x64\RduDev\TRAEngineTest.dll /xml:C:\Jenkins\workspace\TRA.CodeCoverage\TestReports\dotCoverTRAEngineTestRESULTS.xml</TargetArguments>
<TargetWorkingDir></TargetWorkingDir>
<Output>TRAEngineTestSnapshot.dcvr</Output>
</CoverageParams>
Jenkins服务器上的路径是硬编码的,因为我很懒。我知道它应该是一个参数,但它现在可以正常工作。
接下来,我合并所有快照:
合并xml的内容:
<?xml version="1.0" encoding="utf-8"?>
<MergeParams>
<Source>TRAUnitTests.dcvr</Source>
<Source>TRAEngineTestSnapshot.dcvr</Source>
<Output>MergedSnapshots.dcvr</Output>
</MergeParams>
然后运行报告:
report.xml的内容:
<?xml version="1.0" encoding="utf-8"?>
<ReportParams>
<Source>MergedSnapshots.dcvr</Source>
<Output>CoverageReport.html</Output>
<ReportType>HTML</ReportType>
</ReportParams>
上面所有的.xml文件都位于一个名为“TestReports”的文件夹中,这是我将所有结果输出到的文件夹。 Jenkins (Jenkins)将会在那里发布HTML报告和nunit结果:
当一切正常时,您应该在作业页面上获得dotCover报告和nunit结果。
关于unit-testing - 如何整合dotcover和Jenkins,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24484657/