как отладить тест maven surefire более легко (используя eclipse в качестве сервера отладки)

Я использую maven / surefire / eclipse для написания кода и последующего тестирования / отладки.

стандартный способ сделать это с помощью Maven.верный.отладка свойства maven. По умолчанию, когда это свойство включено, maven начинает прослушивание порта 5005, и я могу подключиться к отлаженному процессу с помощью удаленного отладчика. По завершении теста удаленный отладчик отключается от сервера.

этот процесс включает в себя два шага при использовании в затмение:

  1. запустить maven
  2. подключение с помощью конфигурации удаленного запуска

чего я хотел бы достичь, это уменьшить это до:

  1. запустить maven

Я нашел, что настройка maven.верный.свойство debug для некоторых параметров удаленной отладки изменит поведение удаленной отладки. При этом когда я указываю т. е.

-Dmaven.верный.debug=" - Xdebug - Xrunjdwp: transport=dt_socket, сервера=n, адрес=5005"

затем build попытается подключиться к моему процессу eclipse, прослушивая порт 5005. Таким образом, я инвертирую роли клиента/сервера по умолчанию maven и eclipse.

есть одна большая проблема с этим подходом. Это ничего не дает мне, так как после завершения сборки maven eclipse перестает слушать порт сервера. Это часть, которую я не понимаю. Когда я подключаюсь как клиент отладки от eclipse к for пример WebLogic server, он позволяет мне подключаться / отключаться свободно столько раз, сколько я хочу.

кто-нибудь знает, нормально ли это, или, может быть, мне нужно указать некоторые дополнительные параметры, чтобы упростить отладку тестов maven?

4 ответов


простой способ:

1. Open the Debug As > .. dialogue box
2. In the goal text box, give
     -DforkMode=never test
3. Run the debug project

немного поздно в содействии, но думал, что это все еще стоит.

в конфигурации отладки Eclipse создайте конфигурацию отладки" Maven build":

Цели = -Dmaven.верный.debug test

Profiles = myconfigprofile, weblogic

или для конкретного TestSuite:

Цели = -Dmaven.верный.debug-Dtest=com.myorg.mypkg / MyTestSuite.java test

Профили= myconfigprofile,сервера WebLogic

N. B. Не ставьте реквизит в" аргументы JRE/jvm", поскольку это, похоже, не приостанавливается

создать дополнительную конфигурацию" удаленное приложение Java":

Host = localhost

Порт = 5005

запуск/ отладка вашей сборки mvn остановится и прослушает 5005 по умолчанию.

Запуск конфигурации удаленной отладки будет присоединен.

посмотреть также: http://maven.apache.org/plugins/maven-surefire-plugin/examples/debugging.html


Если вы используете m2eclipse, почему бы просто не щелкните правой кнопкой мыши затем Debug > Maven test?


Если вы не используете Maven 2.0.8+, то это будет очень просто,

пожалуйста, обратитесь к моему ответу.

отладка сборки Maven в Eclipse