Как запустить отладчик IntelliJ на модульных тестах в проекте Maven? - PullRequest
7 голосов
/ 02 июля 2011

Я работаю с многофакторным проектом Maven, в котором артефакты в проекте имеют несколько зависимостей друг от друга. Я использую IntelliJ 9. Я хотел бы иметь возможность устанавливать точки останова в своих модульных тестах, но когда я щелкаю правой кнопкой мыши по папке модульных тестов для моего артефакта и выбираю «Отладить все тесты», я получаю класс не найдено исключение, ссылающееся на класс в отдельном артефакте Maven.

Я могу запустить "тестовую" цель Maven для родительского артефакта, и она отлично работает.

Есть идеи? Спасибо.

Ответы [ 2 ]

9 голосов
/ 02 июля 2011

Запустив Maven из командной строки, вы сможете запустить его с включенным отладчиком и просто подключить Idea в качестве удаленного отладчика.Вот как я обычно это использую.

mvn -Dmaven.surefire.debug="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -Xnoagent -Djava.compiler=NONE" test

См. http://maven.apache.org/plugins/maven-surefire-plugin/examples/debugging.html

Это позволит подключить отладчик к порту 8000 и ждать подключения к нему до выполнения.

2 голосов
/ 02 июля 2011

Я хотел запустить модульные тесты для определенного пакета.

Я смог заставить это работать, создав новую конфигурацию JUnit для запуска / отладки в IntelliJ.Я сказал ему, чтобы он запускал тесты в определенном пакете и для «Использования classpath и JDK модуля» я выбрал корневой артефакт Maven.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...