Я хочу получить «тестирование граблей: успешно запустить тесты на подготовленной тестовой базе данных, когда моя база данных разработки снижается. В настоящее время рельсы пытаются создать тестовую базу данных из базы данных разработки. Это возможно?
Я в ситуации, когда мои базы данных PROD / DEV не имеют хоста, но с целью модульных тестов я использую SQLite в базе данных памяти.
Отредактируйте для моих точных действий: Примечание. Я использую Rails 2.3
Моя тестовая база данных настраивается, как это в Config / database.yml:
test:
adapter: sqlite3
database: 'sqlite3_unittest_file.dat'
pool: 5
timeout: 5000
Когда я бегу Rake DB: тест: нагрузка
Тестовая база данных (которая является просто файлом), правильно генерируется в каталоге Rails-root. И когда я бегу Rake Test: единицы
, все работает.
Теперь, если я редактирую Database.yml
, чтобы установить мою базу данных dev имя пользователя для чего-то неправого (например, 'sdlkfj'), тест на граблях: единицы
не удается мгновенно Жалобь:
Access denied for user 'sdlkfj'@'myhostnsmae' (using password: YES)
Когда я запускаю эту сборку «для реального», я запускаю его в системе, где сборки не могут говорить о ящике во время процесса сборки. Следовательно, эта попытка поговорить с базой данных DEV и мгновенно убивать меня и кажется неверным.