Как можно было бы заполнить базу данных приложения rails на основе содержимого другого хранилища в хранилище приложения rails? - PullRequest
0 голосов
/ 18 июля 2011

Итак, моя текущая ситуация такова:
У меня есть приложение rails commander.Внутри этого репозитория находится другое хранилище (подмодуль git, если быть точным), в котором есть приемочные тесты огурца / капибары для другого веб-приложения.Конечная цель commander состоит в том, чтобы просмотреть этот репозиторий приемочных тестов, извлечь все функции, сценарии, фон, теги и т. Д. И поместить их в красивый, симпатичный графический интерфейс.Я хотел бы иметь возможность перечислить объекты, щелкнуть по ним, увидеть сценарии в объекте, увидеть теги в сценарии и т. Д. До сих пор у меня есть леса, настроенные для feature, scenarioи т. д. в базе данных rails.
Меня интересует вопрос: каков наилучший подход к заполнению этой базы данных?Если в репозиторий приемочных тестов добавлено больше контента, весь процесс grep нужно будет снова запускать, а базу данных нужно будет обновлять любыми новыми функциями / сценариями / и т. Д., Которые могут быть добавлены в репозиторий приемочных тестов.И если вызывается действие index контроллера функций, приложение должно быть уверено в том, что все обновлено в базе данных, прежде чем отображать список функций.
Должно ли это быть фоновой задачей, которая запускается время от времени?Если так, то как?Где должен код для этого жить?Грабли / Тор задача?

Ответы [ 2 ]

0 голосов
/ 20 июля 2011

Так что мой подход просто состоит в том, чтобы бросить задачу рейка в lib/tasks.Имеет доступ ко всем моим моделям и тому подобному, так что, похоже, это хорошее место для перетаскивания кода, который просматривает репозиторий приемочных тестов, анализирует все файлы функций и заполняет базу данных.Возможно, имейте git hook, который запускает это в любое время, когда обновляется репозиторий принятия тестов (это подмодуль git), и назовите это хорошим.Если у кого-то есть лучший подход, я бы с удовольствием его услышал.

0 голосов
/ 18 июля 2011

одним из способов заполнения базы данных является «rake db: seed», вы можете добавить специфичные для теста данные с условным выражением «if Rails.env.test?»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...