Я ищу способ исключить определенные методы класса в моем анализе jacoco. Я знаю свойство "исключает", но применимо только к целым классам.
В моем случае я создал методы, которые искажают отчет о покрытии, поэтому я хотел бы исключить их из отчета.
Я ищу способ исключить определенные методы класса в моем анализе jacoco. Я знаю свойство "исключает", но применимо только к целым классам.
В моем случае я создал методы, которые искажают отчет о покрытии, поэтому я хотел бы исключить их из отчета.
JaCoCo теперь поддерживает (в 2018 году я знаю, что вопрос с 2012 года), поскольку версия 0.8.0 (выпущено 2018/01/02) игнорирование методов с аннотацией @lombok.Generated
.
Таким образом, это можно использовать в качестве обходного пути для других сгенерированных методов (если вы можете их пометить) или даже для "рукописных" методов, если вы действительно хотите (хотя это, вероятно, не было целью авторов).
Фактически вы можете использовать подстановочные знаки в свойстве исключений, то есть, если вы используете ant для запуска jacoco unit test:
Blockquote исключает - список имен классов, которые следует исключить из анализа выполнения. Элементы списка разделяются двоеточием (:) и могут использовать подстановочные знаки (* и?). За исключением оптимизации производительности или технических угловых случаев эта опция обычно не требуется. http://www.eclemma.org/jacoco/trunk/doc/ant.html
Вы также можете исключить файлы из процесса создания отчета, используя простые задачи ant 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>
Возможно, вам придется поэкспериментировать с ними, чтобы получить желаемые результаты.