как интегрировать обработку TODO в фазу тестирования maven?

предположим, у меня есть проект с большим количеством задач, некоторые из них непреднамеренно оставлены там, некоторые больше не актуальны, некоторые представляют будущие возможные функции и т. д.

я знаю, что большинство IDE могут показывать/фильтровать/сортировать их, но я ищу способ применить более строгую политику.

то, что я ищу, - это какой-нибудь плагин maven, который я могу связать с фазой тестирования, который ищет TODO определенного формата (например, //TODO-Ver...) и, если таковые найдены, генерирует сбой теста (который будет затем будет виден через hudson, будут отправлены электронные письма, сработает сигнализация, полетят головы и т. д.).

это дополнительное выполнение будет привязано к фазе тестирования в каком-то профиле, который будет активирован только ближе к концу цикла разработки или что-то в этом роде.

мой вопрос кто-нибудь делал что-нибудь подобное раньше? Какие инструменты проверки кода можно настроить для поиска TODO с помощью регулярных выражений и какой плагин maven можно использовать для запуска указанных инструментов проверки? можно ли сделать из юнит-теста? любые комментарии/идеи/предложения приветствуются.


person radai    schedule 27.07.2010    source источник
comment
Лучше создать отчет, чем провалить тест или сборку. Последнее заставит ваших разработчиков удалить все TODO, чтобы сборка прошла успешно. Представьте себе удовольствие, когда нужно учитывать недостающие TODO; да, электронные письма будут отправлены, сработает сигнализация, полетят головы и т. д., но слишком поздно.   -  person Vineet Reynolds    schedule 27.07.2010


Ответы (2)


Это может сделать Checkstyle (см. TodoComment проверку), и вы можете использовать плагин maven checkstyle и его checkstyle:check для проверки кода и отказа сборки в случае нарушения (обычно на этапе verify).

person Pascal Thivent    schedule 27.07.2010
comment
fail сборка слишком радикальна, на мой вкус, но если я не найду ничего другого, я обязательно проверю этот плагин. - person radai; 27.07.2010
comment
@hatchetman82: Ну, вы говорили о катящихся головах, а не я :) И если вы хотите, чтобы Хадсон отправлял электронные письма, вы должны провалить сборку. В любом случае, вы можете настроить плагин на failOnViolation или нет. Вместо этого вы также можете создать отчет. Тебе решать. - person Pascal Thivent; 27.07.2010

Плагин checkstyle уже упоминался, поэтому я представлю плагин Taglist Maven который ищет теги TODO, FIXME в исходном коде и может создать отчет о использование всех таких тегов. Конечно, его можно настроить, так что вы можете добавить свой собственный теги для поиска; регулярные выражения также поддерживаются.

person Vineet Reynolds    schedule 27.07.2010