Machen Sie Mavens todsichere Show Stacktrace in der Konsole


Antworten:


56

Sie können den folgenden Befehl verwenden, um die Stapelverfolgung auf der Konsole anstelle von Berichtsdateien im Ordner target / surefire-reports anzuzeigen:

mvn -Dsurefire.useFile=false test

1
Dies hat nur Logger-Ausgabe in Konsole, aber Stacktraces gehen immer noch zu todsicheren Berichten
— lisak

3
Die Antwort mit trimStackTrace ist besser!
— 19.

187

Ein verwandtes Problem, das ich gefunden habe, ist, dass todsichere in neueren Versionen trimStackTrace anscheinend standardmäßig auf true setzt (wodurch die meisten Stack-Trace in fehlgeschlagenen Tests unbrauchbar werden), was ziemlich unpraktisch ist.

Setzen -DtrimStackTrace=falseoder Definieren

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <configuration>
        <trimStackTrace>false</trimStackTrace>
    </configuration>
</plugin>

löste dies.


60
Ja. Maven druckt nicht nur Seiten mit sinnlosem Durchfall, sondern verbirgt auch das, was Sie tatsächlich sehen müssen.
— Sridhar Sarnobat

7
Ich habe ein Problem mit diesem falschen Standardproblem erstellt . Apache.org/jira/browse/SUREFIRE-1457 . Bitte kommentieren Sie es, um die Wiedereröffnung zu erleichtern.
— Réda Housni Alaoui

2
@ RédaHousniAlaoui Sie haben es anscheinend auf eine andere Ausgabe für JUnit 5 verschoben : issue.apache.org/jira/browse/SUREFIRE-1432 Ich habe gerade dort abgestimmt.
— Kariem

Ich habe sowohl 'trinStackTrace' als auch 'useFile' auf false gesetzt ... und trotzdem bekomme ich keine Stapelspuren für meine Testfehler :-(
— Kris

@Kris meinst du, Stack-Traces haben viele Zeilen, die Ausgabe zeigt ... 26 mehr?
— Netawater

25

Um die zuvor gegebene Antwort zu erweitern, können Sie dieses Verhalten auch wie folgt konfigurieren pom.xml:

..
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-surefire-plugin</artifactId>
  <version>2.5</version>
  <configuration>
    <useFile>false</useFile>
  </configuration>
</plugin>
..
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.