У меня есть интеграционные тесты, основанные на JUnit, которые обращаются к БД. Мы также используем Liquibase Spring bean для инициализации базы данных.
Если я пытаюсь запустить несколько тестов параллельно, каждый из них пытается инициализировать БД с помощью Liquibase, вызывая блокировки и, в конечном итоге, сбои, поскольку только один экземпляр Liquibase может изменять БД одновременно.
Тесты настроены следующим образом:
@RunWith(SpringJUnit4ClassRunner.class)
@Transactional
@WebAppConfiguration
@Sql({"/schema/insert-test-data.sql"})
Как настроить инициализацию БД (схему и данные), чтобы она выполнялась только один раз, а не для каждого теста?