Как установить конфигурацию пути прохождения для теста с использованием файловой системы в файле конфигурации? - PullRequest
0 голосов
/ 20 января 2020

У меня есть задача настройки flyway для Local с использованием файла конфигурации и подключения к моей задаче, например

tasks.create<FlywayMigrateTask>("migrateLocal") {
    configFiles = arrayOf("config/flyway/flyway.conf")
}

Эта задача работает нормально, и сценарии выполняются хорошо, однако, когда я пытаюсь запустить интеграционные тесты с Файл application-TEST.yaml, в котором я определяю пути конфигурации, я получаю ошибку ниже

Flyway failed to initialize: none of the following migration scripts locations could be found:

    - classpath:db/migration

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

flyway:
    schemas: public
    locations: filesystem:doc/flyway/migrations,filesystem:config/flyway/archive,filesystem:config/flyway/post_migrations

Если я попробую это, я получу тот же Flyway, который не удалось инициализировать при запуске одного теста, контекст контекста не сможет load

java.lang.IllegalStateException: Failed to load ApplicationContext

Любая помощь будет высоко ценится

1 Ответ

0 голосов
/ 21 января 2020

Для тех, кто пытается настроить что-то подобное, вы должны аннотировать интеграционный тест с помощью

@ActiveProfiles("TEST")

«TEST» - это профиль конфигурации («application-TEST.yaml»).

После этого все работало нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...