Auf allen ChromeOS-Test-Images ist die ChromeDriver-Binärdatei unter /usr/local/chromedriver/
installiert. Das Binärprogramm wird in diesem Test-Image auf dieselbe Version von Chrome aktualisiert. Sie verwenden also immer den neuesten Build von ChromeDriver.
Wenn Ihr Test mit einer stabilen Version der ChromeDriver-Binärdatei ausgeführt werden soll, müssen Sie in Ihrem Test eigenen Code schreiben, um die entsprechende Binärdatei herunterzuladen und die Binärdatei in /usr/local/chromedriver/
zu ersetzen.
ChromeDriver in einem Autotest verwenden
Sie können einen Test schreiben, der ChromeDriver verwendet, um mit ChromeOS zu interagieren. Es gibt eine Wrapper-Klasse, um ChromeDriver in ChromeOS/Autotest zu verwenden. Die Wrapper-Klasse fungiert als Kontextmanagertyp und übernimmt die folgenden Aufgaben für Sie:
- Meldet sich mithilfe von Telemetry in ChromeOS an.
- Startet ChromeDriver im Remote-Modus auf dem Testgerät und stellt nach der Anmeldung eine Verbindung zum Remote-Debug-Port der Chrome-Instanz her.
- Stellt eine Treiberinstanz bereit, über die Sie ChromeDriver-Aufrufe ausführen können.
- Beendet den ChromeDriver-Prozess und meldet sich von ChromeOS ab.
Folgen Sie diesem Beispiel für einen Test: desktopui_UrlFetchWithChromeDriver
.
So gehts:
Importieren Sie die Wrapper-Klasse.
from autotest_lib.client.common_lib.cros import chromedriver
Erstellen Sie eine Instanz des ChromeDriver und führen Sie Aufrufe aus.
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)|