ChromeDriver-Binärprogramm
Bei allen ChromeOS-Testbildern ist das ChromeDriver-Binärprogramm in /usr/local/chromedriver/
installiert. Das Binärprogramm wird auf die Chrome-Version in diesem Testbild aktualisiert. Das heißt, Sie verwenden immer die aktuelle Version von ChromeDriver.
Wenn die Ausführung des Tests für einen "stabilen" Build des ChromeDriver-Binärprogramms erwartet wird, müssen Sie in Ihrem Test eigenen Code schreiben, um die gewünschte Binärdatei herunterzuladen und die Binärdatei in /usr/local/chromedriver/
zu ersetzen.
ChromeDriver in einem Autotest-Test verwenden
Das Schreiben eines Tests, bei dem ChromeDriver zur Interaktion mit Chrome verwendet wird, geht schnell. Es gibt eine Wrapper-Klasse für die Verwendung von ChromeDriver, die in ChromeOS/Autotest verfügbar ist. Die Wrapper-Klasse ist ein Kontextmanagertyp und übernimmt die folgenden Aufgaben für Sie:
- Anmeldung in ChromeOS mithilfe von Telemetrie
- Startet ChromeDriver im Remote-Modus auf dem zu testenden Gerät und stellt nach der Anmeldung eine Verbindung zum Remote-Debugging-Port der Chrome-Instanz her.
- Macht eine Treiberinstanz verfügbar, damit Sie alle ChromeDriver-Aufrufe ausführen können.
- Fährt den ChromeDriver-Prozess herunter und meldet sich von ChromeOS ab.
Zum Schreiben eines Tests können Sie dem Beispiel für „Test“ desktopui_UrlFetchWithChromeDriver
folgen.
So gehts:
Wrapper-Klasse importieren
from autotest_lib.client.common_lib.cros import chromedriver
Instanz von ChromeDriver erstellen und Aufrufe starten
with chromedriver.chromedriver() as chromedriver_instance: driver = chromedriver_instance.driver # Here you can make standard ChromeDriver calls through the driver instance. # For example, browse a given url with |driver.get(url)|