zoukankan      html  css  js  c++  java
  • 在Eclipse/STS中使用EclEmma进行覆盖率检查

    • EclEmma
      • 官网 - Java Code Coverage for Eclipse
      • 测试覆盖率工具:EclEmma
      • 实现原理
        • Instrumentation:代码注入,在产品代码的关键位置插入统计代码,从而获得测试覆盖率数据
          • Class Instrumentation: 把统计代码插入编译好的.class文件
          • Source Instrumentation:把统计代码插入源代码并编译成新的.class文件
        • Custom JVM:在JVM中把统计代码插入.class。测试覆盖率分析可以在JVM执行测试代码的过程中完成
      • 功能
        • 可以结合Junit或TestNG使用
        • 作为Eclipse/STS的插件来使用
        • 可以显示各层级的覆盖率情况
        • 可以在源码中高亮代码覆盖情况
        • 可以生成覆盖率测试报告
        • 既可以通过单元测试来进行覆盖率测试,也可以以Java Application等正常应用的形式来进行(编译出来或者跑起来以后,交给测试人员进行测试,测试完成之后再生产报告)。
      • 覆盖率指标
        • 行覆盖率: 部分行覆盖:a>b?a:b
        • 基本语句块覆盖率: 基本语句块:没有if-else分支的代码区域
        • 类覆盖率: 由JVM加载并初始化
        • 方法覆盖率: 第一个基本语句块被执行
      • 安装
        • 离线安装。下载后解压出feature和plugin目录,并分别复制到Eclipse/STS的相应目录下,重启Eclipse/STS,工具栏中在调试、运行按钮后面会多出一个按钮,那么就是安装成功了
      • 使用
        • 选择想要进行覆盖率测试的Project
        • 然后在工具栏中按钮的下拉菜单中可以选择"Coverage As"后,可以进一步选择当做Java Application、Junit Test还是TestNG来进行覆盖率测试(最终要是要结合测试框架来执行单元测试,只是顺便统计覆盖率)
        • 运行完成后,可以在"Coverage" View窗口中来查看覆盖率测试结果(各层级的覆盖率百分比)。同时该项目的代码中会用红/绿色高亮跑过/未跑过的代码。
        • 窗口中可以导入/导出Session结果为HTML等格式的文件报告
  • 相关阅读:
    JZOJ6096 森林
    HIT暑期集训 二分图匹配
    HIT暑期集训 网络流
    HIT暑期集训 tarjan,dfs序
    HIT暑期集训 图论基础
    HIT暑期集训 AC自动机
    HIT第二周 周测补题
    HIT暑期集训 字符串
    HIT暑期集训 动态规划
    HIT暑期集训 平衡树
  • 原文地址:https://www.cnblogs.com/wyp1988/p/11394148.html
Copyright © 2011-2022 走看看