Ermitteln des Code-Coverages meiner Anwendung mit dem Java-Agenten JaCoCo auf Tomcat

8

Ich möchte die Codeabdeckung von Integrationstests mit den JaCoCo und den Sonar-Tools messen.

Dafür starte ich meinen mit dem JaCoCo-Agenten konfigurierten Tomcat 5.5, um die Dump-Datei von JaCoCo zu holen.

Also setze ich die JAVA_OPTS dafür:

%Vor%

Wenn ich Tomcat starte, wird die Datei C:\dev\servers\jacoco.exec generiert, aber es sind keine Daten vorhanden.

Gibt es etwas, das ich in der Konfiguration meines Servers vergessen habe?

Grüße.

    
romaintaz 28.07.2011, 09:24
quelle

2 Antworten

4

Soweit ich mich erinnere - Datei würde beim Herunterfahren von Tomcat gefüllt werden.

    
Godin 02.10.2011, 19:48
quelle
8

Mir ist klar, dass dies vor zwei Jahren noch nicht möglich war, wenn Sie diese Frage gestellt haben, aber Sie haben jetzt einige andere Optionen, um die JaCoCo-Ausführungsdaten abzurufen, ohne Tomcat herunterzufahren (oder eine JVM-Instrumentierung mit dem JaCoCo-Java-Agent). .

Sehen Sie sich zuerst die aktuelle Dokumentation für den JaCoCo Java Agent an: Ссылка

Sie können die Option output = tcpserver auf dem JaCoCo-Agenten verwenden, damit der Java-Agent auf Befehle wartet. Sie können address = * setzen, damit der tcpserver alle Interfaces überwacht, und Sie können das port = 6300 Argument setzen, um den Port auszuwählen, auf dem der tcpserver warten soll.

Über den tcpserver kann der JaCoCo Java Agent angewiesen werden, Ihnen die Daten zu senden, wann immer Sie danach fragen.

Wenn Ihre JVM gerade JMX aussetzt, haben Sie eine andere Option, die Sie verwenden können, ohne zusätzliche Ports zu öffnen. Wenn Sie die Option jmx = true setzen, stellt der JaCoCo-Java-Agent eine MBean zur Verfügung, mit der Sie interagieren können.

Wenn Sie maven verwenden, können Sie sich das Plugin ansehen, das ich kürzlich geschrieben habe, um JaCoCo-Daten von entfernten JVMs während des Laufens zu sammeln. Das Projekt für das Plugin befindet sich unter: Ссылка

    
MattJ 19.11.2013 21:00
quelle

Tags und Links