2012-01-03 4 views
12

Я ищу способ исключить определенные методы класса в моем анализе jacoco. Я знаю свойство «исключает», но применимо только к целым классам.Исключить методы класса из анализа jacoco

В моем случае я создал методы, которые искажают отчет о покрытии, поэтому я хотел бы исключить их из отчета.

+2

Я думаю, что это список TODO, см. Здесь: https://github.com/jacoco/jacoco/wiki/FilteringOptions –

ответ

-1

Вы можете использовать подстановочные знаки в собственности исключает, что если вы используете муравей запустить тест блока jacoco:

Blockquote исключает - список имен классов, которые должны быть исключены из исполнения анализ. Элементы списка разделяются двоеточием (:) и могут использовать подстановочные знаки (* и?). За исключением оптимизации производительности или технических угловых случаев эта опция обычно не требуется. http://www.eclemma.org/jacoco/trunk/doc/ant.html

Вы также можете исключить файлы из процесса генерации отчетов с помощью простого муравьем fileset задачи:

<jacoco:report>  
    <executiondata> 
     <file file="jacoco.exec"/> 
    </executiondata> 

    <structure name="Example Project"> 
     <classfiles> 
      <fileset dir="classes"/> 
     </classfiles> 
     <sourcefiles encoding="UTF-8"> 
      <fileset dir="src"/> 
     </sourcefiles> 
    </structure> 

    <html destdir="report"/> 

</jacoco:report> 

Вы можете поэкспериментировать с ними, чтобы получить желаемые результаты.

0

JaCoCo теперь поддерживает (в 2018 году, я знаю, что вопрос от 2012 года), так как version 0.8.0(выпущен на 2018/01/02)пренебрегая методы с annotion @lombok.Generated.

Таким образом, это может быть использовано в качестве обходного пути для других сгенерированных методов (если вы можете пометить их таким образом) или даже для «рукописных» методов, если вы действительно этого хотите (хотя это, вероятно, не было целью авторы).