如何整合dotcover和Jenkins

 用户cnhr0qjy0s 发布于 2023-01-07 09:37

如何整合dotcover和Jenkis.

任何PDF或指南?

我能够通过命令行运行点覆盖,并生成测试结果.但是,当我尝试通过Windows批处理命令在Jenkins中运行时,它会抛出一个错误

命令'cover'不支持2个未命名的参数键入'dotCover help'以供使用.

有什么遗失?

1 个回答
  • 我使用Jenkins的dotCover.我有多个需要测试的DLL,所以我的工作将为每个DLL执行dotcover,合并测试快照,并生成HTML报告.我的Jenkins设置包括"HTML Publisher插件"和"NUnit插件"

    首先获取命令行工具并将其放在Jenkins服务器上: dotCoverCommandLineTools

    在Windows批处理命令中运行命令行工具:

    windows batch命令用来运行测试

    我尝试将params传递到命令行时运气不佳,所以我使用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将在那里发布HTML报告和nunit结果: 结果发布

    如果一切正常,您应该在作业页面上获取dotCover报告和nunit结果.

    2023-01-07 09:41 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有