Ainsi, même si je n'aime pas faire cela, un moyen facile d'empêcher l'initialisateur d'exécuter pendant la base de données: migrez, mais en cours d'exécution sur le démarrage de l'application ou le test est de l'envelopper dans un test de clause si le tableau existe. Donc, si vous prenez votre code d'initialiseur existant et enveloppez-le
if ActiveRecord::Base.connection.table_exists? 'table_name'
....
end
Où 'Table_Name' est le nom de la table manquante, puis Rake DB: Migrate et l'exécution des spécifications devrait être en mesure de terminer avec succès.