Настройка клеверного исключения шаблонов файлов - PullRequest
2 голосов
/ 26 апреля 2011

Привет,

У меня есть установка clover 3.0 с использованием ant, со следующими исключениями из файла:

<clover-setup initString="${clover.initstring}" flushpolicy="threaded" flushinterval="30000">
    <methodContext name="tostring" regexp="(.* )?public String toString\(.*\).*" />
    <files>
        <exclude name="**/*Test.java" />
        <exclude name="**/entity/fields/*.java" />
    </files>
</clover-setup>

Тестовые файлы исключены правильно, как и вызовы toString (), файлы в пакете entity / fields - нет. Работает ли муравейный тип <files> с двумя исключенными предметами? У вас может быть частичное определение пакета для вашего исключаемого имени? Я использовал **/..... формат, так как документ говорит что-то загадочное, как

Набор шаблонов Ant, относящийся к пакету верхнего уровня (например, com / cenqua / clovertest), элемент, который контролирует, какие файлы включаются или исключаются из инструментария Clover. Используйте это, если вы хотите исключить файлы на основе пакетов.

Из этого я прочитал, что он начинается с клевертеста в образце, хотя я не уверен, откуда он знает, что такое top level package is? Это первый пакет с файлами?

В качестве примера мои классы Java, которые я хочу исключить, выглядят как

package com.acme.missileinabox.common.entity.fields;

public class ActivityFields {
   ....
}

Есть идеи, что я обожаю? Я разместил вопрос здесь без ответа.

1 Ответ

1 голос
/ 26 апреля 2011

Вам может потребоваться указать <fileset>, возможно, содержащий один или несколько <patternset>, как обсуждалось в теме <fileset>в <clover-setup>.

Приложение: Если вы измените <files> на <fileset>, вы можете использовать его неявное значение <patternset> без изменений:

<fileset>
    <exclude name="**/*Test.java" />
    <exclude name="**/entity/fields/*.java" />
</fileset>

В качестве альтернативы используйте <files> и вложите явное <patternset>:

<files>
    <patternset>
        <exclude name="**/*Test.java" />
        <exclude name="**/entity/fields/*.java" />
    </patternset>
</files>
...