Wie kann ich Debug-Tests unter Verwendung von Intellij- und Maven-Pom-Dateien innerhalb des Maven-Testziels ausführen?
Wenn ich sie direkt im Code ausführe, beschwert es sich über fehlende Profile, die ich in den Maven-Projekten von Intellij angekreuzt habe.
testing
maven-2
intellij-idea
JavaRocky
quelle
quelle
http://maven.apache.org/plugins/maven-surefire-plugin/examples/debugging.html
Führen Sie Ihren Test in IDEA im Debug-Modus "
mvn -DforkMode=never test
" ausAktualisiert : Öffnen Sie Ihre Run / Debug-Konfiguration und fügen Sie auf der Registerkarte "Runner" hinzu
-DforkMode=never
(Bemerkung von @ mikeapr4: Neuere Versionen des todsicheren Plugins (2.14+) verwenden
mvn -DforkCount=0 test
)quelle
mvn -DforkCount=0 test
ist erwähnenswert, dass neuere Versionen des todsicheren Plugins (2.14+) verwendet werden. Dies wird unten in anderen (verwirrenden) Antworten erwähnt, aber sie könnten übersehen werden.Ich führe Tests mit folgenden Optionen durch:
... und dann mit dem Remote-Debugger eine Verbindung zu Maven herstellen.
quelle
-DforkMode=never
funktioniert nicht mehr, es ist jetzt in SureFire veraltet.Verwenden Sie
-DforkCount=0
stattdessen, wenn Sie das todsichere Plugin 2.14+ verwenden.quelle
forkCount
undreuseForks
stattdessen, also denke ich, dass die oben genannten sagen sollten: "Verwenden Sie-DforkCount=0
stattdessen." Ich habe es versucht-DforkCount=0
(reuseForks
sollte keine Rolle spielen, wenn es keine Gabeln gibt), aber mein Haltepunkt ist nie ausgelöst worden. Es löst mit-DforkMode=never
(Maven 3.2.1, IDEA 13.1.2) aus.Die Frage wurde beantwortet. Aber nur um meine eigenen Erfahrungen zu teilen. Die ausgewählte Antwort hat mein Problem nicht gelöst. Mein Code hat mehrere Module.
Die Antwort von Foolshat brachte wertvolle Einblicke in mein Problem.
Ich habe zwei Lösungen: 1. Verwenden Sie Ihre IDEA, indem Sie eine VM-Option hinzufügen
-DforkMode=never
. Muss im Debug-Modus ausgeführt werden. 2. Richten Sie ein Remote-Debugging ein und geben Sie den Socket an. In diesem Fall ist forkMode nicht erforderlich.Es ist nur eine Zusammenfassung dessen, was ich durchgemacht habe.
quelle
Die Lösung von Colin Hebert funktioniert auch für mich nicht. Glücklicherweise habe ich einen einfachen Weg gefunden, um den Test zu debuggen, indem ich mit der rechten Maustaste auf das grüne Dreieck neben der Testmethode klicke:
Beispiel für eine Java-Testklasse
Ich hoffe das hilft dir!
quelle