Считается ли использование HSQLDB интеграционным тестированием? Должен ли я использовать это? - PullRequest
0 голосов
/ 04 сентября 2018

Моя команда использует Redshift, и мы хотели бы проверить наши запросы и общую логику без необходимости полагаться на уже существующие данные. Другими словами, как и в традиционном интеграционном тестировании, мы хотели бы вставить данные, выполнить тестирование, а затем очистить. Мы ссылаемся на конкретные таблицы + схемы в наших DAO, поэтому, если мы решим провести интеграционный тест с Redshift, то мы будем вставлять в нашу тестовую БД, которую используют некоторые наши клиенты (мы используем эту БД в бета-версии, поэтому данные по-прежнему "производственного качества" "данные, только то, что бета-версия имеет подмножество того, что делает Prod). Характер наших запросов - выполнение агрегатов / функций для набора данных - без транзакций CUD.

Мне было интересно, есть ли какая-то внутренняя ценность в использовании Redshift или я могу просто положиться на HSQLDB (полный контроль, прозрачность и чистый лист)? Подходит ли HSQLDB к области интеграционного тестирования?

Спасибо!

1 Ответ

0 голосов
/ 04 сентября 2018

Да, это считается интеграционным тестом для ваших репозиториев, и я бы сказал, что это рекомендуется!

Если вы используете Spring, вы можете даже использовать @DataJpaTest, который создает базу данных в памяти для ваших интеграционных тестов (https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-testing.html#boot-features-testing-spring-boot-applications-testing-autoconfigured-jpa-test).

Несмотря на то, что вам все еще нужен настоящий RedShift для тестирования функциональности / дыма перед началом производства.

...