Saltar al contenido

@Import vs @ContextConfiguration en Spring

Solución:

@Import y @ContextConfiguration son para diferentes casos de uso y no se pueden intercambiar.

los @Import solo es útil para importar otros @Configuration archivos y solo es útil (y afaik) y funcional en @Configuration clases. Al poner el @Import en una clase de prueba no será bueno ya que no será procesado.

@Configuration
@Import(PersistenceConfig.class)
public class MainConfig {}

Utilizando @Import puede ser útil si, por ejemplo, ha desactivado el escaneo de componentes para @Configuration clases o necesitas un @Configuration class de un paquete no cubierto por su componente-scan.

Nota: También hay @ImportResource que hace lo mismo para los archivos de configuración basados ​​en XML más antiguos.

Lo contrario es válido para @ContextConfiguration ya que solo es útil en las clases de prueba basadas en Spring (las pruebas se ejecutaron con el SpringRunner para jUnit 4). Se utiliza para proporcionar a la prueba los parámetros de configuración para realizar la configuración de la prueba. Puede ser una colección de XML, javaconfig (o una combinación de los mismos).

@RunWith(SpringRunner.class)
@ContextConfiguration( {MainConfig.class, TestConfig.class})
public MyTest {}

También permite especificar qué usar para cargar esa configuración (entre otros).

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *