El otro día realizando la creación de una aplicación con SpringBoot me dio el siguiente error, a la hora de realizar uno de los Test correspondientes:
java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test
En un principio la excepción te indica la causa del error y es que es necesario que haya una clase que contenga la configuración de la aplicación o bien con @ContextConfiguration o con @SpringBootTest.
El problema es que en el código ya existía dicha clase con la configuración. Pero aún así, el Test no estaba cogiendo la clase de configuración de SpringBoot. La disposición de las clases erá la siguiente:
my-project
+--pom.xml
+--src
+--main
+--com
+--example
+--app
+--Application.java
+--test
+--com
+--example
+--test
+--JpaTest.java
Solución: Todo radica en la jerarquia de los paquetes y en los cuales se encuentran las clases de Test y Configuración. Con la disposición actual, la clase de pruebas no se encontraba en la misma jerarquía de paquetes que la clase de configuración. Esto podemos solucionarlos perfectamente, o poniendo la clase de configuración en un paquete superior o bajando la clase de pruebas en un paquete inferior. Ejemplo:
my-project
+--pom.xml
+--src
+--main
+--com
+--example
+--Application.java
+--test
+--com
+--example
+--test
+--JpaTest.java
Con esta disposición funciona correctamente.
Me has salvado la vida :')
ResponderEliminargracias
ResponderEliminarMuchas gracias
ResponderEliminar