zoukankan      html  css  js  c++  java
  • Jenkins 覆盖率插件Cobertura 使用

    1, 安装插件 Cobertura

    注意: cobertura Plugin,Code coverage API plugin两个插件都可以生产cobertura代码覆盖率可视化报告。但是code coverage API plugin生产都覆盖率可以 通过rest API访问到。(所以在构建job时,选择生成code coverage API样式的覆盖率文件)
    参考地址: https://github.com/jenkinsci/code-coverage-api-plugin
    (rest api 获取相关的覆盖率格式如下)
    1.Coverage result: …/{buildNumber}/coverage/…/result/api/{json|xml}?depth={number}
    2. Trend result: …/{buildNumber}/coverage/…/trend/api/{json|xml}?depth={number}
    3. Coverage result of last build: …/{buildNumber}/coverage/…/last/result/api/{json|xml}?depth={number}
    4. Trend result of last build: …/{buildNumber}/coverage/…/last/trend/api/{json|xml}?depth={number}
    例如下
    比如 coverage result: 解析如下
    host/job/jobsName/34/coverage/result/api/json?depth=34
    注意:在当前job中执行python 脚本请求接口,会返回404. 可以通过构建另一个job获取它的覆盖率结果。
    解析如下内容即可

    2, 不配置pom文件,执行maven命令

    ----在命令行中写的好处是我们不用去修改配置文件。

    cobertura-maven-plugin:2.7:cobertura
    最终会生成 cobertura.xml文件。
    mvn -B clean org.codehaus.mojo:cobertura-maven-plugin:2.7:cobertura -Dcobertura.report.format=xml -Dmaven.test.failure.ignore=true -Dnubility.instrumentation.excludes=com/test/**/*.class,com/test.class

    3. 排除包和类 ,分割。

    4.1 排除用法: -Dnubility.instrumentation.excludes
    Dnubility.instrumentation.excludes=com/test/**/*.class,com/test.class
    4.2 指定输出的报告格式
    -Dcobertura.report.format=xml 作用,默认是不生成xml报告的。需要加上输出报告的格式。maven命令需要加上它,不然后续如果要使用到xml文件时,没有的话就会报错

    创建一个任务,

    1,在 "构建后操作" 添加 Cobertura report
    插件可以看到详情的覆盖率结果
    2,添加 发布代码覆盖率报告,
    注意可以通过API接口获取到覆盖率结果,通过钉钉机器人通知给他人

    获取单元测试总数并计算成功率

    • 安装插件后 junit report 也是通过接口获取。并解析出想要的内容。 api 接口格式

    http://host/job/当前构建的job名称/构建个数/api/json

  • 相关阅读:
    [LeetCode] 5. 最长回文子串 ☆☆☆(最长子串、动态规划)
    代码分层思考
    bash 字符串处理
    Shell脚本调试技术
    php fsockopen
    ajax 无刷新文件上传
    jquery validator
    详解机器学习中的熵、联合熵、条件熵、相对熵和交叉熵
    互信息
    条件熵
  • 原文地址:https://www.cnblogs.com/trimphNuan/p/13864899.html
Copyright © 2011-2022 走看看