Nach meiner Erfahrung können Sie das Modell nach dem Herstellen der Verbindung wie jedes andere Modell behandeln. Da Sie nur die Daten konsumieren, die einige der Tests vereinfachen, müssen Sie nicht auf Datenvalidierungen testen.
Offensichtlich, da Rails mit zwei verschiedenen Datenbanken von zwei verschiedenen Modellen kommuniziert, können Sie keine Joins zwischen den Datenbanken machen und so wird es auch dort nichts zu testen geben.
Also, um die Frage zu beantworten: Was ist der beste Weg, ein Modell zu testen, das eine zweite Datenbank verwendet? Ich würde sagen, genau so, wie Sie es testen würden, wenn es Ihre einzige Datenbank wäre.
finde ich, dass in meiner Modelle, die mein Vermächtnis Datenbanken wickeln ich einige spezielle Bindung in Code hinzufügen, die Dinge ein wenig mehr „Rails-y“ und macht die Ansicht und Controller-Code aussehen wie es has_one
und belongs_to
Typ macht Code drin. Ich habe Tests, die diese benutzerdefinierten Methoden anwenden.
Hoffnung, das hilft.
Wenn es schreibgeschützt ist ... was genau testen Sie? Ich nehme an (weil es schreibgeschützt ist), dass die Daten von woanders eingegeben werden und Rails es gerade verbraucht? –
Ich teste einige Abfragelogik. Und FooBar kann gegen Tabellen aus derselben Datenbank (Verbindung) beitreten. Ich möchte auch die Interaktivität von FooBar mit anderen Modellen testen. – newtonapple