【问题标题】:Understanding the JaCoCo coverage XML report了解 JaCoCo 覆盖率 XML 报告
【发布时间】:2020-03-22 18:03:43
【问题描述】:

我已经成功创建了一份 JaCoCo XML 覆盖率报告。在我得到的报告中:

<class
name="PATH"
 sourcefilename="DeleteUtility.java">
  <method name="&lt;init&gt;"
  desc="(Lcom/commons/treenode/PathNode;)V"
   line="20">
    <counter type="INSTRUCTION" missed="17" covered="0" />

    <counter type="LINE" missed="6" covered="0" />

    <counter type="COMPLEXITY" missed="1" covered="0" />

    <counter type="METHOD" missed="1" covered="0" />
  </method>
...

我有几个关于格式的问题:

  1. 有时方法名称是&amp;lt;init&amp;gt;""&amp;lt;clinit&amp;gt;"。我猜是&lt;init&gt;&lt;clinit&gt;。这些方法是什么意思?
  2. desc 是什么意思?
  3. COMPLEXITY 是什么意思?
  4. INSTRUCTION是方法中关键字的数量吗?

【问题讨论】:

    标签: java code-coverage jacoco


    【解决方案1】:

    Instruction 最小单位 JaCoCo 计数是单个 Java 字节码指令。指令覆盖率提供有关已执行或遗漏的代码量的信息。

    Complexity 计算每个非抽象方法的圈复杂度,并总结类、包和组的复杂度。

    Method每个非抽象方法至少包含一条指令。当至少执行了一条指令时,认为方法已执行

    Line对于所有编译过调试信息的类文件,可以计算出各行的覆盖率信息

    Branch 方法中可以执行或遗漏的分支总数(if 和 switch 语句)。

    请参阅 Jacoco https://www.eclemma.org/jacoco/trunk/doc/counters.html 中的文档

    【讨论】:

    • 谢谢。其他问题呢?我在文档中找不到有关它们的信息
    猜你喜欢
    • 2018-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-15
    • 1970-01-01
    • 1970-01-01
    • 2020-06-07
    相关资源
    最近更新 更多