Понимание отчета о покрытии JaCoCo XML - PullRequest
0 голосов
/ 22 марта 2020

Мне удалось создать отчет о покрытии 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. Иногда имя метода - &lt;init&gt;" или "&lt;clinit&gt;". Я думаю, это <init> и <clinit>. Что означают эти методы?
  2. Что означает desc?
  3. Что означает COMPLEXITY?
  4. Является ли INSTRUCTION количеством ключевых слов в методе?

1 Ответ

0 голосов
/ 22 марта 2020

Instruction наименьшая единица Счетчик JaCoCo - это одиночные Java инструкции байтового кода. Охват инструкций предоставляет информацию о количестве кода, который был выполнен или пропущен.

Complexity вычисляет сложность цикломати c для каждого неабстрактного метода и суммирует сложность для классов, пакетов и групп.

Method Каждый неабстрактный метод содержит хотя бы одну инструкцию. Метод считается выполненным, когда была выполнена хотя бы одна инструкция

Line Для всех файлов классов, которые были скомпилированы с отладочной информацией, информация покрытия для отдельных строк может быть вычислена

Branch Общее число ветвей (операторов if и switch) в методе, которые могут быть выполнены или пропущены.

см. Документацию в Jacoco https://www.eclemma.org/jacoco/trunk/doc/counters.html

...