Я использую Spring Boot 1.4.3 и имею кучу тестов, помеченных @DataJpaTest. По умолчанию они работают с базой данных в памяти. Я хотел бы иметь возможность временно запускать их все на локальном MySQL. Как я могу это сделать простым способом?
Я обнаружил, что могу заставить его работать для одного, добавив @ActiveProfiles("local"), где у меня есть application-local.properties, который указывает на мой локальный MySQL, но добавлять его везде, запускать тесты и затем снова удалять (так как я хочу запустить это вручную только для MySQL, среда CI будет работать с внутренней памятью) db).
Я использую Maven, если это имеет значение.
ОБНОВЛЕНИЕ:
Итак, у меня есть application-local.properties, который содержит свойства базы данных для подключения к моей локальной базе данных MySQL (которую я уже использую для запуска своего приложения на локальном MySQL)
Затем я щелкаю правой кнопкой мыши в IntelliJ по пакету и выбираю «Выполнить все тесты в пакете». В настройках этой конфигурации запуска я добавляю -Dspring.profiles.active=local в поле «Параметры виртуальной машины».
Я думал, что это активирует локальный профиль во время тестов, но это не так. Если я остановлю локальный MySQL, тесты все равно пройдут нормально.
Подробнее здесь: https://stackoverflow.com/questions/416 ... emory-with
Как однократно запустить @DataJpaTest для реальной базы данных, а не в памяти с помощью Spring Boot ⇐ JAVA
Программисты JAVA общаются здесь
1765810059
Anonymous
Я использую Spring Boot 1.4.3 и имею кучу тестов, помеченных @DataJpaTest. По умолчанию они работают с базой данных в памяти. Я хотел бы иметь возможность временно запускать их все на локальном MySQL. Как я могу это сделать простым способом?
Я обнаружил, что могу заставить его работать для одного, добавив @ActiveProfiles("local"), где у меня есть application-local.properties, который указывает на мой локальный MySQL, но добавлять его везде, запускать тесты и затем снова удалять (так как я хочу запустить это вручную только для MySQL, среда CI будет работать с внутренней памятью) db).
Я использую Maven, если это имеет значение.
ОБНОВЛЕНИЕ:
Итак, у меня есть application-local.properties, который содержит свойства базы данных для подключения к моей локальной базе данных MySQL (которую я уже использую для запуска своего приложения на локальном MySQL)
Затем я щелкаю правой кнопкой мыши в IntelliJ по пакету и выбираю «Выполнить все тесты в пакете». В настройках этой конфигурации запуска я добавляю -Dspring.profiles.active=local в поле «Параметры виртуальной машины».
Я думал, что это активирует локальный профиль во время тестов, но это не так. Если я остановлю локальный MySQL, тесты все равно пройдут нормально.
Подробнее здесь: [url]https://stackoverflow.com/questions/41614368/how-to-one-off-run-datajpatest-against-real-database-instead-of-in-memory-with[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия