2012-04-04 7 views
2

In meiner Rails-Anwendung ich zwei Datenbanken haben, konnte ich dies und läuft mit folgenden EinstellungenErzeugungs schema.rb Datei für zwei Datenbanken

database.yml 

development: &defaults 
    adapter: mysql 
    encoding: utf8 
    database: <Database1> 
    username: <user_name> 
    password: <password> 
    host: localhost 

second_development: &defaults 
    adapter: mysql 
    encoding: utf8 
    database: <Database2> 
    username: <user_name> 
    password: <password> 
    host: localhost 

test: &defaults 
    adapter: mysql 
    encoding: utf8 
    database: <Database1_test> 
    username: <user_name> 
    password: <password> 
    host: localhost 

second_test: &defaults 
    adapter: mysql 
    encoding: utf8 
    database: <Database2_test> 
    username: <user_name> 
    password: <password> 
    host: localhost 

bekommen, aber das Problem ist, wenn die Testfälle laufen, ich benutze 'mocha', 'guard' und 'notahat-machinist', und wenn ich versuche, die Testfälle auszuführen, führt es zuerst die Datei schema.rb aus. Aber das Problem ist es das Schema aus der ersten Testdatenbank erstellt nur

test: &defaults 
     adapter: mysql 
     encoding: utf8 
     database: <Database1_test> 
     username: <user_name> 
     password: <password> 
     host: localhost 

Dies wird den Test auf die zweite Testdatenbank ‚Database2_test‘ scheitert im Zusammenhang macht. Was wäre die Problemumgehung dafür?

zum Generieren einer schema.rb-Datei, die das Datenbankschema enthält.

Dank im Voraus

+1

Warum müssen Tests für die erste Testumgebung und die zweite Testumgebung in einem Durchgang des Testframeworks durchgeführt werden? – sarnold

+0

Hallo @sarnold, danke für die Wiederholung, meine Komponententests sind auf beide Datenbanken verteilt, also brauche ich beide Datenbanken beim Ausführen der Unit-Tests – sameera207

Antwort

0

Die schema.rb erzeugen, ist durch die Verbindung zu definieren. Sie müssen also die gute Verbindung in Ihrem Test verwenden, um das gute Schema zu haben.

+0

Hi @Singara, danke für die Wiederholung. Beide Verbindungen funktionieren und meine Komponententests sind auf beide Datenbanken verteilt. Daher benötige ich beide Datenbanken, wenn ich die Komponententests durchführe – sameera207

Verwandte Themen