• Jenkins结合.net平台工具之ReportGenerator


    上一节我们讲解了如何使用opencover生成单元测试覆盖率报告,opencover默认生成的report为xml格式,可读性并不是特别强,如果靠阅读opencover生成的results.xml来分析测试结果显然是非常耗费时间和精力的.

    下面介绍一款工具,可以把opencover生成的xml覆盖率报告转化为交互的html.

    继续使用上一节项目,使用nuget添加对reportgenerator的引用.

    Reportgenerator安装完成以后,在项目的packages目录下面会有以下目录

    ReportGeneratorxxx ools

    我们打开这个目录内容如下:

    期中ReportGenerator.exe是我们要使用的生成html报告的工具.

    这里我们新建一个bat文件,命名为generateReport.bat,其中代码如下

    "E:personal project ewTest2018ConsoleApp1packagesReportGenerator.3.1.2 oolsReportGenerator.exe" -reports:"E:personal project ewTest2018ConsoleApp1NunitTestinDebug esults.xml" -targetdir:"coverage"

    第一个空格前为ReportGenerator所在位置, -reports后跟的参数为我们用于生成html的xml文件,这个xml文件是上一节我们使用opencover生成的. –targetdir是要存放xml报告的目录.

    打开Jenkins,新建一个ReportGeneratorTest的项目,build栏添加windows batch command步骤,然后在命令框里输入刚创建的generateReport.bat的位置

    点击保存,然后执行build Now,如果配置正确的话,则会生成一条成功构建记录,打开记录可以看到Console out输出的内容和下面类似

    从控制台输出可以看到生成成功了,然后这个目录对我们的意义并不大,我们需要看到是生成的代码覆盖率报告.我们打开目录下的coverage目录(在generateReport.bat里配置的输出目录).可以看到如下类似内容

    期中index.htm为导航页面.我们打开index.htm内容类似如下

    可以看到上面是测试覆盖率的总体报告,包括创建时间,解析器,程序集数量,类数量,覆盖行数,未覆盖行数,行数覆盖率等.

    下面则是每一个类的覆盖率报告.并有图形化展示.

    我们点击类名(比如NunitTest.GeneralTest)则会进入这个类测试的更详细页面.如下图

    期中上面是总结,下面是此类中每个方法的覆盖率报告.右侧是方法/属性导航,点击会跳到这个方法/属性.点击会进入该方法/属性对应的代码

    其中红色表示未覆盖的代码,绿色代表覆盖的代码.

  • 相关阅读:
    视图容器组件使用
    组件的学习
    伸展树
    二叉搜索树
    二叉树
    笛卡尔树
    二叉堆
    vim配置
    使用vim-pathogen 进行插件管理
    C/C++中的变量和静态变量
  • 原文地址:https://www.cnblogs.com/tylerzhou/p/9076537.html
Copyright © 2020-2023  润新知