java - runners - spring-@ContextConfiguration no puede cargar el archivo de configuración en src/test/resources
run junit with spring boot (7)
He intentado cargar el archivo de configuración spring en src / test / resources classpath con la siguiente clase abstracta:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"classpath:/applicationContext.xml"})
public class BaseIntegrationTests {
}
Tengo el archivo applicationContext.xml en src / test / resources pero Spring no puede cargarlo.
Gracias.
Creo que tengo un problema similar, descubrí que mi application-context.xml no estaba en target / test-classes / neighter en src / test / resources
Hay un error reportado al usar la dependencia de prueba de primavera (incluye SpringJUnit4ClassRunner) con versiones de JUnit> 4.4.
Si está utilizando una versión de JUnit más reciente que 4.4, intente moverla a 4.4 y ver si resuelve su problema.
Intenta usando * para que pueda buscar en tu classpath
@ContextConfiguration(locations={"classpath*:applicationContext.xml"})
Para ser precisos, el contenido del directorio de salida de prueba ( target/test-classes
) está en la ruta de clases, no src/test/resources
. Pero los recursos en src/test/resources
se copian en el directorio de resultados de prueba con el objetivo de resources:testResources
(que está vinculado de forma predeterminada a la fase de process-test-resources
).
Dicho esto, su código se ve bien y los recursos para el código fuente de la prueba deberían haber sido copiados por su IDE o por Maven al ejecutar pruebas y, por lo tanto, deberían estar disponibles en la ruta de clases. Así que debe haber algo más mal. Puedo ver que su clase es una clase base para pruebas de integración. ¿Configuraste algo de lujo en tu pom? ¿Puedes mostrarlo?
Parece que usas maven y tratas de ejecutar las pruebas desde dentro de eclipse. Compruebe la carpeta de buil ( target/test-classes/
) para applicationContext.xml
. Si no está allí, tendrías que construir primero.
Si está utilizando Maven y está ejecutando casos de prueba desde eclipse, el proyecto haga clic con el botón derecho> Maven> maven update ( ALT F5 ) podría funcionar para usted.
el contexto de su aplicación debe incluirse en classpath y poner *:
@ContextConfiguration(locations = { "classpath:*/application-context.xml" })