tests test springframework org example contextconfiguration context spring junit applicationcontext

test - ¿Cómo acceder al contexto Spring en las pruebas jUnit anotadas con @RunWith y @ContextConfiguration?



test spring applicationcontext (3)

Dado que las pruebas se instanciarán como un Spring Bean también, solo necesita implementar la interfaz ApplicationContextAware:

@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = {"/services-test-config.xml"}) public class MySericeTest implements ApplicationContextAware { @Autowired MyService service; ... @Override public void setApplicationContext(ApplicationContext context) throws BeansException { // Do something with the context here } }

Tengo la siguiente clase de prueba

@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = {"/services-test-config.xml"}) public class MySericeTest { @Autowired MyService service; ... }

¿Es posible acceder a services-test-config.xml programación en uno de esos métodos? Me gusta:

ApplicationContext ctx = somehowGetContext();


Esto funciona bien también:

@Autowired ApplicationContext context;


Si su clase de prueba extiende las clases de Spring JUnit
(por ejemplo, AbstractTransactionalJUnit4SpringContextTests o cualquier otra clase que extienda AbstractSpringContextTests ), puede acceder al contexto de la aplicación llamando al método getContext() .
Consulte los javadocs para el paquete org.springframework.test.