Frage

Ich möchte einige Funktionen hinzufügen Webdriver, aber da ich Java überhaupt nicht kenne, möchte ich verstehen, wie es zuerst funktioniert. Wenn ich es bekomme, gibt es also ein Firefox -Plugin (JavaScript) und es gibt Java -Code, der Firefox mit installierter Erweiterung startet, dann hört dieser Java -Code einen lokalen Port und wenn er einen Befehl hat, signalisiert Java es dem Firefox -Plugin , was den tatsächlichen Job macht. Und der Python -Code ist nur eine Reihe von Abkürzungen zur Portschnittstelle. Es ist so richtig?

Aktualisieren:

Danke für die Antwort, Malatio. Aber könnte jemand bitte erklären, warum, wenn ich hinzufügealert('Hello world!');nachFirefoxDriver.prototype.deleteCookie = function(respond, cookieString) {inD:\webdriver-read-only\firefox\src\extension\components\firefoxDriver.jsund dann rennen

from webdriver_firefox.webdriver import WebDriver

wd = WebDriver()
wd.delete_all_cookies()

ich noch nicht Siehe das Hello world! Alarm (und bekommen eine Error, übrigens)

War es hilfreich?

Lösung

Ja, du hast es. Der Java -Server steuert einen Browser mit einer speziellen JavaScript -Umgebung, mit der der Server ihn steuern kann. Der Server hört auf Befehle zu, die über HTTP gegeben wurden. Wenn er Befehle empfängt, wird die Saiten auf dem Browser gezogen, damit es Sachen macht. Die Python -API für Webdriver ist Code, mit dem die richtigen HTTP -Befehle an den Webdriver -Server gesendet werden können. Es kann für Webdriver gute Beschreibungen oder Diagramme dafür geben oder nicht, aber die Architektur ist für Selen sehr ähnlich (in der Tat werden Webdriver und Selen als "Selen 2" ineinander zusammengeführt). Hier ist ein Überblick über die gleiche Architektur aus den Selenium -Dokumenten: How-Selenium-RC-Arbeit

alt text
(Quelle: openqa.org)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top