Vcr: Videorecorder spielt nicht gut mit Selenium (und Capybara)

Erstellt am 9. März 2010  ·  5Kommentare  ·  Quelle: vcr/vcr

Wenn ich eine mit @javascript markierte Gurke mit einem Kassetten-Tag versehen (was dazu führt, dass Capybara den Selenium-Treiber verwendet), passieren seltsame Dinge ...

Beim ersten Start läuft alles wie erwartet: Die Kassette nimmt auf, die Daten werden verwendet und alles geht durch.

Das nächste Mal, wenn ich es (von der Kassette) ausführe, schlägt es mit der nicht registrierten Anfrage fehl: GET http://localhost :9887/ identify .

Es scheint, dass Selenium über diesen Port mit seinem Server kommunizieren muss (in diesem Fall pingen, um zu sehen, ob er existiert). Ich bin mir nicht ganz sicher, wie VCR das durcheinander bringt, aber es ist so.

Es wäre wahrscheinlich nützlich, localhost-Anfragen durchzulassen (entweder konfigurierbar oder durch ein @allow_localhost- Tag oder beides).

Hilfreichster Kommentar

@clyfe -- Ich empfehle, stattdessen die Konfigurationsoption c.ignore_localhost = true verwenden; es ist speziell dafür gedacht.

Alle 5 Kommentare

Dies sollte durch 2ed9c3c318305ee39fa054997da1b67c1413a408 behoben werden.

Ich habe das gleiche Problem auf Version 1.11.3, mit rspec-Anfragen test mit :js => true (Capybara, Selenium).

  • Beim ersten Start läuft alles wie erwartet: Die Kassette nimmt auf, die Daten werden verwendet und alles geht durch.
  • Das nächste Mal, wenn ich es (von der Kassette) ausführe, schlägt es mit der nicht registrierten Anfrage fehl: GET http://localhost:9887/__identify__ .

Ich habe dies überwunden, indem ich in einigen Situationen c.allow_http_connections_when_no_cassette = true .

@clyfe -- Ich empfehle, stattdessen die Konfigurationsoption c.ignore_localhost = true verwenden; es ist speziell dafür gedacht.

@myronmarston Danke für c.ignore_localhost = true , es hat mir geholfen. Aber ich wollte einen lokalen Service aufnehmen. Also zuerst habe ich es aufgenommen und dann den Host in der Kassette gewechselt.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen