Ich habe ein Java EE Projekt, in dem ich Arquillian Tests mit JUnit auf JBoss 7 (Windows) verwende. Tests funktionieren gut, aber ich kann sie nicht debuggen.
Von dem, was ich gegooglet habe ( Ссылка ) Ich verstehe, dass Arquillian-Tests in separaten VM ausgeführt werden, daher kann IntelliJ nicht debuggen sie. Ich brauche IntelliJ, um eine Verbindung zu dieser Maschine über den Socket herzustellen, aber ich weiß nicht, wie ich es machen soll.
Ich habe diesen Thread gefunden: Debuggen mit Arquillian in IntelliJ - Managed Container Aber ich weiß nicht, wie es funktioniert.
Ich bin auch über diesen Thread gestolpert: Ссылка , also habe ich hoffentlich genügend todsicheren Teil in meinem Pom gefüllt. xml aber es hat nicht geholfen:
%Vor%Könnte mir bitte irgendwer eine Gilde geben, wie man Tests in einer solchen Konfiguration debuggt?
Zunächst hängt es vom verwendeten Containertyp ab - verwaltet, remote oder eingebettet. Siehe auch Ссылка . Für Letzteres laufen die Tests in der gleichen JVM und Sie können zum Beispiel Ihren Test direkt in der IDE debuggen.
Die Surefire-Konfiguration ist in diesem Fall nicht wichtig, weil Sie in Ihrer IDE debuggen wollen (es sei denn, Sie führen maven-Ziele in Ihrer IDE aus).
Für verwaltete und entfernte Container müssen Sie den tatsächlichen Container debuggen. Dazu müssen Sie die richtigen JVM-Optionen an den Remote-Container übergeben, damit Sie eine Remote-Debugging-Sitzung öffnen können. Eine Möglichkeit, dies zu tun, ist via arquillian.xml :
Ссылка
%Vor%
Der wichtige Teil im obigen Beispiel ist javaVmArguments .
Ich kann Arqullian-Tests entweder von Maven oder von IntelliJ ausführen. Ich benutze eingebettete Container. Das Wichtigste ist, das JBoss-Home auf arqullian.xml zu konfigurieren, oder einfach nur die Maven-Konfiguration, damit IntelliJ weiß, wo sich das JBoss-Home befindet.
%Vor%
WICHTIG zum Debuggen und Ausführen des Tests in IntelliJ:
Aus irgendeinem Grund müssen Sie den Logging Manager angeben, um eingebettete JBoss ausführen zu können. Für Maven ist es einfach und du kannst es auf Konfiguration einstellen:
%Vor%Aber das IntelliJ interessiert sich nicht für diese Plugin-Konfiguration bei Maven und Sie müssen es direkt bei der Testfall-Konfiguration einstellen. Ich habe keine bessere Lösung gefunden. Der eingebettete Container kümmert sich nicht um die Java VM-Konfiguration in arqllian.xml.
Hier gibt es immer die Möglichkeit, Debugging über Remote Debugging durchzuführen. Ich mache es gerne bei IDE. Für mich ist es komfortabler. Wenn Sie das Remote-Debugging aktivieren möchten, müssen Sie die Konfiguration für eingebettete Container auf JAVA_OPT oder auf arqllian.xml festlegen.
Ich habe ein Java EE Projekt, in dem ich Arquillian Tests mit JUnit auf JBoss 7 (Windows) verwende. Tests funktionieren gut, aber ich kann sie nicht debuggen.
Von dem, was ich gegooglet habe ( Ссылка ) Ich verstehe, dass Arquillian-Tests in separaten VM ausgeführt werden, daher kann IntelliJ nicht debuggen sie. Ich brauche IntelliJ, um eine Verbindung zu dieser Maschine über den Socket herzustellen, aber ich weiß nicht, wie ich es machen soll.
Ich habe diesen Thread gefunden: Debuggen mit Arquillian in IntelliJ - Managed Container Aber ich weiß nicht, wie es funktioniert.
Ich bin auch über diesen Thread gestolpert: Ссылка , also habe ich hoffentlich genügend todsicheren Teil in meinem Pom gefüllt. xml aber es hat nicht geholfen:
%Vor%Könnte mir bitte irgendwer eine Gilde geben, wie man Tests in einer solchen Konfiguration debuggt?
Zunächst hängt es vom verwendeten Containertyp ab - verwaltet, remote oder eingebettet. Siehe auch Ссылка . Für Letzteres laufen die Tests in der gleichen JVM und Sie können zum Beispiel Ihren Test direkt in der IDE debuggen.
Die Surefire-Konfiguration ist in diesem Fall nicht wichtig, weil Sie in Ihrer IDE debuggen wollen (es sei denn, Sie führen maven-Ziele in Ihrer IDE aus).
Für verwaltete und entfernte Container müssen Sie den tatsächlichen Container debuggen. Dazu müssen Sie die richtigen JVM-Optionen an den Remote-Container übergeben, damit Sie eine Remote-Debugging-Sitzung öffnen können. Eine Möglichkeit, dies zu tun, ist via arquillian.xml :
Ссылка
%Vor%
Der wichtige Teil im obigen Beispiel ist javaVmArguments .
Tags und Links java unit-testing jboss7.x jboss-arquillian junit