Интеграционный тест Grails 3 - загрузка данных - PullRequest
0 голосов
/ 02 июня 2018

Версия Grails: 3.3.5

Я портирую устаревшее веб-приложение на последние версии Grails.Есть более 500 интеграционных тестов.Каждый метод интеграционного теста должен загружать сложные данные в базу данных до начала теста и очищать его в конце.Загрузка данных и последующий тестовый код должны выполняться за одну транзакцию, чтобы тестовый код мог видеть загруженные данные.Я пытался использовать spock run listener для загрузки данных.К сожалению, контекст приложения или dataSource не загружается при запуске методов beforeSpec и beforeFeature.Пожалуйста, предложите лучший способ реализовать это.Может кто-нибудь дать представление о том, какие классы grails / spock участвуют в загрузке тестов и их выполнении?Любая помощь или подсказка высоко ценится.Спасибо.

1 Ответ

0 голосов
/ 03 июня 2018

Насколько я понял из вопроса, ниже вы можете попробовать пару вещей:

  • Может загружать данные базы данных в Bootstrap для тестовой среды, только если все тесты в некоторой степени используют одни и те же данные.
  • Попробуйте @RunOnce и @Before для метода загрузки данных перед запуском любого метода фиксации.
  • Посмотрите на build-test-data plugin.

Документация также может помочь.

...