Придумать нормальную инициализацию тестовой базы данных
Описание проблемы
С появлением каждой новой таблицы в тестовом sql приходится писать DELETE * [таблица]. Причем делать это приходится именно в таком порядке, чтобы не нарушить ограничения в связанных таблицах. Но дело не столько в этих DELETE, сколько в том, что основной sql почти ничем не отличается от тестового, кроме этих delete, что создает неудобства при добавлении данных (их приходится добавлять и туда, и туда).
Причины появления
В основном sql DELETE отсутствуют, так как данные переинициализируются каждый раз при очередном старте приложения (spring.jpa.hibernate.ddl-auto=create). Как я понял, при тестах перезапуск главного процесса не происходит, а значит не происходит и обновление ddl в hibernate.
Возможные решения
Скорее всего, необходимость в наличии тестового sql как такового отпадёт, если я начну использовать mock-объекты для тестирования бизнес-логики.
Придумать нормальную инициализацию тестовой базы данных
Описание проблемы
С появлением каждой новой таблицы в тестовом sql приходится писать
DELETE * [таблица]
. Причем делать это приходится именно в таком порядке, чтобы не нарушить ограничения в связанных таблицах. Но дело не столько в этихDELETE
, сколько в том, что основной sql почти ничем не отличается от тестового, кроме этих delete, что создает неудобства при добавлении данных (их приходится добавлять и туда, и туда).Причины появления
В основном sql
DELETE
отсутствуют, так как данные переинициализируются каждый раз при очередном старте приложения (spring.jpa.hibernate.ddl-auto=create
). Как я понял, при тестах перезапуск главного процесса не происходит, а значит не происходит и обновление ddl в hibernate.Возможные решения
Скорее всего, необходимость в наличии тестового sql как такового отпадёт, если я начну использовать mock-объекты для тестирования бизнес-логики.