Параллельное выполнение функций Cucumber в потоках, при этом каждый поток имеет отдельную изолированную БД.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Параллельное выполнение функций Cucumber в потоках, при этом каждый поток имеет отдельную изолированную БД.

Сообщение Anonymous »

В моем проекте есть тысячи функций для интеграционного теста, последовательное выполнение которых заняло чертовски много времени. Я пытаюсь запустить его параллельно. Проблема, с которой я сталкиваюсь, заключается в том, что группа файлов объектов использует один и тот же базовый класс, который использует одну и ту же базу данных. При параллельной работе эти функции будут пытаться изменить одну и ту же базу данных (postgresdb), что приведет к сбою некоторых запросов к базе данных, что затем приведет к сбоям тестирования. Мои тесты пройдут нормально, если я буду использовать изолированную базу данных для каждого потока. Есть ли способ сделать это?
Я использую
@ConfigurationParameter(key = Constants.PARALLEL_EXECUTION_ENABLED_PROPERTY_NAME, value = "true")
для достижения параллельного выполнения и
@ConfigurationParameter(key = Constants.EXECUTION_MODE_FEATURE_PROPERTY_NAME, value = "same_thread"), так как я хочу, чтобы все мои сценарии выполнялись в одном потоке, и
@ConfigurationParameter(key = Constants.PARALLEL_CONFIG_FIXED_PARALLELISM_PROPERTY_NAME, value = "4" ), поскольку я хочу ограничить параллельное выполнение функций фиксированным числом.
Я хочу, чтобы при запуске теста запускались 4 контейнера БД, и каждая БД должна быть назначена определенному потоку до тех пор, пока тест заканчивается
(В настоящее время я использую один источник данных, который определен в файле application-test.yml)

Подробнее здесь: https://stackoverflow.com/questions/791 ... g-individu
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»