Подстановочный знак Spring Context в модульных тестах - PullRequest
1 голос
/ 15 февраля 2011

У нас есть настройка проекта, которая довольно широко использует профили Maven.Мы используем Spring, и хотя у нас в основном есть конфигурация на основе аннотаций, необходимо несколько файлов конфигурации XML.

Эти файлы конфигурации Spring XML извлекаются с различными профилями и в реальном веб-приложении.все они помещены в WEB-INF / spring и загружены classpath:spring/spring-*.xml.Это прекрасно работает.

Проблема заключается в модульном тестировании: я хочу протестировать множество различных профилей, и у Spring, похоже, есть проблема со спецификацией подстановочного знака, подобной той, когда файлы распределены по нескольким каталогам.

Я думаю, что самым простым решением было бы просто указать каждый конфигурационный файл в тестовой аннотации @ContextConfiguration, но, к сожалению, если он отсутствует, Spring вызывает исключение, и, похоже, нет способа его отключить..

Другая вещь, о которой я подумал, это потенциальный сброс всех конфигурационных файлов Spring в одну папку перед запуском тестов, но это кажется чем-то большим.

Мне просто интересно, есть ли у кого-то ещелюбой опыт этой проблемы и любые обходные пути.

1 Ответ

3 голосов
/ 15 февраля 2011

Кажется, что парни из Spring уже думают об этом .

Вы можете использовать синтаксис:

classpath*:spring/spring-*.xml

Что, кажется, работает правильно.

...