5

Testen mit PayPal Kasse mit Selenium & Chrome Webdriver.localhost weigerte sich zu verbinden, nach der Rückkehr aus paypal Sandkasten

Ich habe versucht, einen anderen Domain-Namen, localhost und 127.0.0.1

Es wichtig sein kann, ich bin mit in einer Vagrant Maschine (Gehöft)

Auch laufen arbeiten manuell Tests zu beachten. Ich glaube, das Problem, eine Umgebungsvariable sein PAYMENT_SANDBOX_PAYPAL_URL=http://localhost:8000/checkout/, aber das ist verwirrend, von dem, was ich verstehe, sollte es keinen Unterschied sein, wenn automatisierte Tests mit einem Webdriver ausgeführt werden.

Ist dies ein Netzwerkproblem mit Vagrant und meinem Gastgeber? Wie würde ich das diagnostizieren?

enter image description here

Ich verstehe dies eine ziemlich spezifische Frage an die genannten Einrichtung ist, aber ich denke, andere neue Selen Nutzer wie ich wird es nützlich finden, vor allem, wenn codeception und Laravel verwenden.

Vielleicht hat es etwas mit Whitelisting IPs zu tun? Hier ist der aktuelle Befehl.

java -jar vendor/se/selenium-server-standalone/bin/selenium-server-standalonjar -Dwebdriver.chrome.bin="/usr/bin/google-chrome" -Dwebdriver.chrome.driver="vendor/bin/chromedriver" -Dwebdriver.chrome.options="--whitelisted-ips=173.0.82.77,127.0.0.1" 
+0

versuchen, es an 0.0.0.0:8000 – Ammadu

+0

binden können Sie Telnet-IP und Port – madz

+0

Sind Sie ein Server auf Vagrant, der auf Port 8080 ausgeführt wird? Läuft der Selenserver auch auf der Landstreichermaschine? – Jeff

Antwort

0

Ich würde vermuten, Chrom mit unterschiedlichem Profil ausgeführt, wenn manuell gestartet (wenn es in der Lage ist, zu laden), und wenn durch WebDriver gestartet. WebDriver startet den Browser in einem anderen Profil, das sich stark vom Standardprofil unterscheidet, das einige Einstellungen für Proxy/Netzwerk enthält.

Von https://sites.google.com/a/chromium.org/chromedriver/capabilities

standardmäßig ChromeDriver wird ein neues temporäres Profil für jede Sitzung erstellen. Manchmal möchten Sie vielleicht spezielle Einstellungen festlegen oder einfach ein benutzerdefiniertes Profil verwenden. Im ersten Fall können Sie mit der Funktion "chrome.prefs" (wird später beschrieben) Präferenzen festlegen, die nach dem Start von Chrome angewendet werden. Wenn letzteres, können Sie die Benutzer-data-dir Chrome Befehlszeilenschalter verwenden Chrome sagen, welches Profil verwendet werden:

ChromeOptions options = new ChromeOptions(); 
options.addArguments("user-data-dir=/path/to/your/custom/profile"); 

Sie können Ihr eigenes Profil erstellen, indem Sie einfach mit Chrome (auf der Kommandozeile oder über ChromeDriver), wobei der Benutzerdaten-Schalter auf ein neues Verzeichnis gesetzt wurde. Wenn der Pfad nicht existiert, erstellt Chrome am angegebenen Speicherort ein neues Profil. Sie können die Profileinstellungen dann wie gewünscht ändern, und ChromeDriver kann das Profil zukünftig verwenden. Öffnen Sie chrome: // version im Browser, um zu sehen, welches Chrome-Profil verwendet wird.

0

Sind Sie sicher, dass die PayPal Sandbox-URL eine lokale URL sein sollte, die nicht von außerhalb Ihrer Box zugänglich ist?

Bitte geben Sie weitere Details an! Welchen Web-Framework/Webserver verwenden Sie? Was sind Bibliotheken, mit denen Sie PayPal arbeiten lassen?

Ich denke, wenn das Verhalten beim Ausführen von Selen unterscheiden, ist es ein Problem, das vollständig mit WebDriver-Einstellungen verbunden ist, oder es arbeitet mit Vagrant zusammen.

Verwandte Themen