Wie folge ich einer Weiterleitung nach click_link / button mit Gurke und Capybara in Rails?

7

Ich versuche derzeit, eine Integration / Akzeptanzprüfung für eine neue Rails 3-Anwendung mit Gurke und Capybara einzurichten. (Ich wollte ursprünglich Webrat verwenden, aber es scheint, dass es Schienen 3 nicht unterstützt, so endete ich mit Capybara)

Ich versuche, einen grundlegenden Login-Test zu erhalten:

%Vor%

Das Problem ist jetzt, dass das Login-Formular mich an /user_session schickt, was mich dann zum Home /home des Benutzers weiterleitet. Die Gurke folgt nicht der Umleitung, die dazu führt, dass die Then I should be on the users home page -Zeile fehlschlägt.

Wie kann ich Gurke / Capybara sagen, der Umleitung zu folgen, so dass ich auf der richtigen Seite bin, nachdem ich einen Knopf gedrückt habe, um einem Link zu folgen?

Es scheint eine follow_redirect! -Methode im rack_test-Treiber zu geben, den ich verwende, aber es ist privat und ich habe keine Ahnung, wie ich diese Funktionalität nennen soll.

danke im voraus,
Simon

    
Simon Wallner 23.07.2010, 16:44
quelle

3 Antworten

14

Capybara folgt automatisch Weiterleitungen. Etwas anderes ist gebrochen.

    
triskweline 25.07.2010, 17:37
quelle
6

Fügen Sie dies Ihren Schritten hinzu:

%Vor%

Dann, wenn Ihre Tests sich schlecht benehmen, können Sie "Und ich drück die Antwort" zu Ihren Schritten hinzufügen und sehen, wohin es mit den Weiterleitungen oder was auch immer geht.

    
Ghoti 05.12.2010 20:04
quelle
1

Etwas, das funktionieren könnte, ist die Reihenfolge der Anweisungen zu wechseln:

%Vor%

Dann erfolgt die Überprüfung der aktuellen Seite nach der Prüfung auf den Seitentext. Gurken-Tests erfordern viel Debugging, viel Glück!

    
Karl 23.07.2010 18:54
quelle