Ich habe ein Java-Projekt mit mehreren Klassen, und ich habe Junit Testfälle für jede Klasse erstellt.Junit Testfälle passieren einzeln, aber nicht in MVN installieren
habe ich jacoco Plugin Die Überprüfung der Testabdeckung meines Projekts mit Sonarqube 5.5 verwendet. Ich arbeite an Eclipse-Mars 4.5.2 auf Windows 7
wenn ich laufe mvn installieren Sie das Eclipse-Plugin, es berichtet, dass einige meiner Testfälle versagt haben (ohne Stacktrace, warum) sehen, und ich die folgende Ausnahme:
An error has occurred in JaCoCo report generation. Error while creating report: Unknown block type 7.
Allerdings, wenn ich diese Testfälle einzeln in Eclipse laufen, sie gut funktionieren und erfolgreich sind, was bedeutet, dass ich nicht bin mit mvn auf Testfälle installieren mit falsche Behauptungen.
Ich dachte, dass dies ein Problem mit meinem Eclipse Maven Plugin sein könnte, also habe ich mvn install separat mit cmd laufen lassen, aber ich bekomme die selbe Ausnahme.
Ich habe mein Projekt in Eclipse aktualisiert. Alle meine Testfälle passieren danach (seltsam), aber ich sehe immer noch diese Ausnahme.
Was bedeutet diese Ausnahme und wie kann ich sie beheben?
Jede Anleitung wird ernsthaft geschätzt. Danke
Haben Sie https://groups.google.com/forum/#!topic/jacoco/f1ZllnGkjlo gesehen, das besagt, dass die parallele Testausführung der Grund ist. Sie müssen das todsichere Plugin verwenden. Können Sie versuchen, Ihre Tests nacheinander auszuführen und zu sehen, ob das Problem auftritt? – GauravJ
Ja. Ich bin auf diese Seite gestoßen, und ja, ich benutze das todsichere Plugin. Bitte sagen Sie mir, wie ich den Testlauf serialisieren kann. Danke –
Bitte überprüfen Sie http://maven.apache.org/surefire/maven-surefire-plugin/examples/fork-options-and-parallel-execution.html. Genauer gesagt führt "forkCount = 1/reuseForks = false" jede Testklasse nacheinander in einem eigenen JVM-Prozess aus. Sie erzeugt die höchste Trennungsstufe für die Testausführung, aber es würde Ihnen wahrscheinlich auch die längste Ausführungszeit von allen geben verfügbare Optionen. Betrachten Sie es als letztes Mittel. " – GauravJ