Я делаю некоторые интеграционные тесты с JUnit. У меня есть xml-файл, где я объявляю некоторые объекты шаблонов, которые я хочу ввести. В каждом тесте мне нужен свежий контекст приложения, который не должен тестировать, должен зависеть от других тестов, поэтому на setUp()
Мне нужно «повторно инициализировать» эти сущности по их начальным значениям по умолчанию.Обновить Spring ApplicationContext, без контекста повторной инициализации, возможно?
Я могу добиться этого путем перезагрузки, но таким образом я не могу использовать аннотации @Autowired
.
@Before
public void setUp(){
ApplicationContext ctx = new ClassPathXmlApplicationContext("classpath:entityTemplates-Context.xml");
homeA = (Home)ctx.getBean("homeA");
}
Есть ли способ сделать это и по-прежнему использовать @Autowired
для этих лиц?
Спасибо, я использую весна-тест тоже, и через какое-то нюхает только что нашел «@DirtiesContext (classMode = ClassMode.AFTER_EACH_TEST_METHOD)», это делает работу, он перезагружает весь контекст, медленный, но только для тестов интеграции. – isah