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.