Отладка gradle теста изнутри затмения

Можно ли отлаживать тест gradle, начатый с

gradle test

на CLI изнутри затмения? Могу ли я добавить аргументы JVM, например

java -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 ....

для удаленной отладки, поскольку я сделал бы это для нормальной программы Java?

Ответ 1

Параметр gradle - -Dtest.debug. Затем вы можете подключиться через eclipse на порт 5005.

Ответ 2

Решение:

Я предпочитаю gradle test --debug-jvm. Это запустит приложение в режиме удаленного отладки, и вы можете подключиться с любым удаленным отладчиком, например Eclipse, на порту 5005. Это не только работает для тестов JUnit, но и для обычных программных исполнений, т.е. gradle run --debug-jvm.


Пример отладчика - Eclipse:

В Eclipse перейдите в свой проект → Отладка как... → Конфигурация отладки → Удаленное приложение Java. Как host set localhost, как порт 5005.

Затем вы сможете отлаживать свои тесты.


Дополнительная информация:

Для получения дополнительной информации см. официальный документ Gradle Java plugin doc относительно тестирования.

[...] также можно включить во время вызова с помощью опции задачи --debug-jvm (с Gradle 1.12).

Ответ 3

Это просто класс JUnit, который вы хотите отлаживать? Если это так, просто отлаживайте класс JUnit непосредственно в Eclipse с помощью "Debug As".