2017-02-01 3 views
0

Vor einiger Zeit fand ich diese wirklich nützlich Capybara Spitze über die aktuelle Seite als Mensch öffnen würde es auf halbem Weg durch Ihre Tests siehe:Capybara current_url Geben example.com

die Adresse Port ermitteln und die Test-Pause

Manchmal möchte ich nur sehen, was im Browser passiert. Obwohl save_and_open_page Ihnen eine Vorstellung davon gibt, was vor sich geht, können Sie nicht wirklich herumklicken, weil die Seite, die Sie erhalten, statisch ist und keine Assets enthält. Um herauszufinden, was passiert, benutze ich gerne einen Trick, den ich von meinem Mentor Mike Pack gelernt habe.

Fügen Sie diese beiden Codezeilen direkt über der unterbrochenen Linie in Ihrem Test hinzu. Beachten Sie, dass Sie in Ihrem aktuellen Edelsteinset oder in der Gemdatei installiert sein müssen, damit dies funktioniert.

Führen Sie die Spezifikationen aus, und kopieren Sie beim Pausieren die URL und die Portnummer aus der Testausgabe. Öffne deinen Browser und füge die Adresse in das Fenster ein. Voila! Sie durchsuchen jetzt Ihre Website im Testmodus!

(Spitze drei von here)

ich diese Arbeit ohne weiteres erinnern, aber jetzt, wenn ich es verwenden, wird der Host als ‚http://www.example.com/‘ gegeben und wenig überraschend versuchen, es zu öffnen, wird nicht-wo.

Ich habe eine similar question gefunden, die vielleicht genug Informationen enthält, um herauszufinden, wie man Capybara hackt, aber meine ersten Versuche haben nicht funktioniert. Ich habe mich gefragt, ob jemand eine out-of-the-boxish Lösung kannte?

Unsere vielleicht relevanten Test-Edelsteine ​​sind Capybara, Poltergeist, Launchy und Webmock.

Antwort

1

Wenn current_url als example.com zurückkehrt, dann wird der Test, den Sie versuchen, wahrscheinlich den rack_test Treiber verwenden (kein JS, sehr eingeschränktes CSS). Sie können einen Browser nicht auf Tests verweisen, die den rack_test-Treiber verwenden, da ein Server nicht gestartet wird, um die Seiten für diese Tests bereitzustellen.

Verwandte Themen