Как повторно использовать контекст Spring при запуске пакетного теста Ant junit

Я занимаюсь обновлением нашего приложения до JUnit4. Мне удалось запустить наши тестовые примеры с помощью аннотаций Spring.

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration

Затем мы выполняем все тесты с помощью Ant, используя

<junit ...>
  <batchtest fork="yes" todir="tmp">
    <fileset dir="${testsrc.dir}">
      <include name="**/Test*.java"/>
    </fileset>
  </batchtest>

Однако, судя по нашим лог-файлам, контекст Spring создается заново для каждого отдельного тестового класса. Таким образом, общее время выполнения слишком велико. Каков правильный подход к загрузке контекста Spring только один раз?

Спасибо, Саймон Нидербергер.


person Simon    schedule 25.01.2013    source источник


Ответы (1)


Может быть, это из-за параметра fork? Похоже, муравей создает форк для каждого отдельного теста. Я предполагаю, что обычно Springs junit runner пытается повторно использовать контекст.

person Robert Kornmesser    schedule 25.01.2013
comment
Роберт, спасибо за подсказку. Хитрость заключается в том, чтобы установить forkmode=perBatch (по умолчанию perTest). - person Simon; 27.01.2013