Me gustaría probar algunos servicios en mi aplicación, pero cuando uso la anotación @SpringBootTest, dan como resultado StackOverflowError.
Para empezar, estoy usando JUnit5 e intenté crear una prueba básica como: ellos con @SpringBootTest causan un StackOverflowError Primero, estoy usando JUnit5 y tratando de crear algunas pruebas básicas como :)
@Test
void onePlusOneShouldBeTwo() {
int one = 1;
assertEquals(2, one + one);
}
y este funciona bien (Este funciona bien).
Pero para pruebas más complejas necesito usar @SpringBootTest y no importa cómo se vea la prueba, el error sigue siendo :(
java.lang.StackOverflowError
at java.base/java.lang.StackTraceElement.of(StackTraceElement.java:541)
at java.base/java.lang.Throwable.getOurStackTrace(Throwable.java:838)
at java.base/java.lang.Throwable.getStackTrace(Throwable.java:830)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:79)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
at ch.qos.logback.classic.spi.ThrowableProxy.<init>(ThrowableProxy.java:89)
error de desbordamiento de pila
Después de revisar muchos tutoriales, se dice que es logback
la versión o la configuración.
Después de ser corregido por el jefe, se encuentra que se usa security config
. En el módulo del proyecto que no requiere verificación de inicio de sesión, se necesita el siguiente código. eliminado
// DELETE THIS:
@Bean
public AuthenticationManager authenticationManagerBean() throws Exception {
return configuration.getAuthenticationManager();
}
o
Fuente del artículo:
https://stackoverflow.com/questions/73929257/springboottest-annotation-resulting-in-stackoverflowerror