Модульное тестирование кода activejdbc без живой базы данных

Любое предложение о том, как протестировать код activejdbc без живой базы данных? Я не могу следить за TDD, потому что в каждом месте ему нужна живая база данных sql, и я не могу издеваться над ней. Правильно ли иметь живую базу данных sql для модульного тестирования?


person dejavu    schedule 05.12.2014    source источник


Ответы (1)


ActiveJDBC считывает свои метаданные из базы данных при первом доступе. Это означает, что для этого требуется база данных. Как правило, для тестирования вы будете использовать другую базу данных, а не ту, которую используете для запуска приложения. Поскольку ActiveJDBC поддерживает несколько баз данных, вы можете использовать базу данных H2 в памяти для своих тестов.

В любом случае, какова цель тестирования классов ORM без базы данных?

person ipolevoy    schedule 05.12.2014
comment
Это правильно. На самом деле на одной из моих машин jenkins не был установлен mysql. Может быть, использовать его с H2 - хороший вариант. - person dejavu; 09.12.2014
comment
Я бы рекомендовал использовать для тестов ту же базу данных, что и в рабочей среде, чтобы избежать неожиданностей после развертывания :) - person ipolevoy; 09.12.2014