Una situación anormal en Java que puede resultar muy molesta: al ejecutar los tests de nuestro proyecto, el stacktrace de las excepciones que puedan surgir aparece "abreviado" (o mejor dicho, cortado: sólo aparecen las primeras 2 líneas!). Por suerte, es algo muy simple de solucionar.

El problema surge por el plugin "Surefire"de Maven, que es el encargado de ejecutar los tests. Las versiones más nuevas de este plugin imprimen un stacktrace abreviado por default. Para quienes usan Spring Boot, en la versión 1.x de Spring Boot se incluí la versión 2.18.1 de Surefire (la cual no abrevia el stacktrace). Sin embargo, desde Spring Boot 2.x se incluye la versión 2.22.1 de Surefire... el cual recorta la impresión del stacktrace.

Para solucionarlo, basta con agregarle la opción trimStackTrace en false al plugin de Surefire:

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

Y voilá! Problema resuelto.

Mandanos tus sugerencias

Ayudanos con ideas para los artículos de este blog a contacto@somospnt.com