ChromeOS

Auf allen ChromeOS-Testimages ist das ChromeDriver-Binärprogramm in /usr/local/chromedriver/ installiert. Das Binärprogramm wird auf dieselbe Chrome-Version in diesem Test-Image aktualisiert. Sie verwenden also immer den neuesten Build von ChromeDriver.

Wenn Ihr Test für die Ausführung mit einem stabilen Build des ChromeDriver-Binärprogramms vorgesehen ist, müssen Sie in Ihrem Test eigenen Code schreiben, um das entsprechende Binärprogramm herunterzuladen und das Binärprogramm in /usr/local/chromedriver/ zu ersetzen.

ChromeDriver in einem Autotest-Test verwenden

Sie können einen Test schreiben, der ChromeDriver verwendet, um mit ChromeOS zu interagieren. In ChromeOS/Autotest ist eine Wrapper-Klasse für die Verwendung von ChromeDriver verfügbar. Die Wrapper-Klasse fungiert als Kontextmanager-Typ und übernimmt die folgenden Aufgaben für Sie:

  1. Meldet sich über die Telemetrie in ChromeOS an.
  2. Startet ChromeDriver im Remote-Modus auf dem zu testenden Gerät und stellt nach der Anmeldung eine Verbindung zum Remote-Debug-Port der Chrome-Instanz her.
  3. Stellt eine Treiberinstanz bereit, mit der Sie beliebige ChromeDriver-Aufrufe ausführen können.
  4. Fährt den ChromeDriver-Prozess herunter und meldet sich von ChromeOS ab.

Hier ist ein Beispiel für einen Test: desktopui_UrlFetchWithChromeDriver.

So gehts:

  1. Importieren Sie die Wrapper-Klasse.

    from autotest_lib.client.common_lib.cros import chromedriver
    
  2. Erstellen Sie eine Instanz von 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)|