使maven在控制台中显示堆栈跟踪

问题描述 投票:0回答:3

我想在控制台中查看单元测试的堆栈跟踪。 Surefire 支持这个吗?

maven unit-testing stack-trace maven-surefire-plugin
3个回答
275
投票

我发现的一个相关问题是,最近版本中的surefire显然默认将trimStackTrace设置为true(使失败的测试中的大多数堆栈跟踪变得无用),这是相当不方便的。

设置

-DtrimStackTrace=false
或定义

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

解决了这个问题。


60
投票

您可以使用以下命令在控制台上查看堆栈跟踪,而不是在 target/surefire-reports 文件夹中查看报告文件:

mvn -Dsurefire.useFile=false test

29
投票

要扩展之前给出的答案,您还可以在您的

pom.xml
中配置此行为:

    ...
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-surefire-plugin</artifactId>
      <version>2.5</version>
      <configuration>
        <useFile>false</useFile>
      </configuration>
    </plugin>
    ...
© www.soinside.com 2019 - 2024. All rights reserved.