По умолчанию maven surefile плагин запускает тесты в изолированной (разветвленной) среде. Вы можете переопределить это поведение со следующей конфигурацией:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<forkMode>never</forkMode>
</configuration>
</plugin>
</plugins>
</build>
Если вам нужно отлаживать тесты, вы должны использовать этот фрагмент конфигурации. Или вы можете просто запустить maven build следующим образом:
$ mvn -Dmaven.surefire.debug tests
Это запустит отладчик на порту 5005.
Мой вопрос: какие преимущества имеют стратегия forking и почему выбрана в качестве стратегии по умолчанию для сборки maven? Не является ли стратегия неоркинга более простой и поэтому ее следует использовать по умолчанию (maven - соглашение по настройке, справа)?