ChromeOS

ChromeDriver-Binärprogramm

Bei allen ChromeOS-Test-Images ist das ChromeDriver-Binärprogramm in /usr/local/chromedriver/ installiert. Das Binärprogramm wird auf die gleiche Version von Chrome in diesem Test-Image aktualisiert. Das heißt, Sie verwenden immer den neuesten Build von ChromeDriver.

Wenn der Test erwartet, dass er mit einem „stable“ ChromeDriver-Binärdatei, müssen Sie im Test Ihren eigenen Code schreiben, um das gewünschte Binärprogramm herunterzuladen und ersetzen Sie die Binärdatei in /usr/local/chromedriver/.

So verwenden Sie ChromeDriver in einem Autotest-Test

Ein Test, bei dem mithilfe von ChromeDriver mit Chrome interagiert wird, geht ganz schnell. Es gibt eine Wrapper-Klasse zur Verwendung von ChromeDriver, verfügbar in ChromeOS/Autotest. Die Wrapper-Klasse als Kontextmanager-Typ und übernimmt die folgenden Aufgaben für Sie:

  1. Anmeldung in ChromeOS mithilfe von Telemetrie.
  2. Startet ChromeDriver im Remote-Modus auf dem zu testenden Gerät (DUT) und stellt nach der Anmeldung eine Verbindung zum Remote-Debugging-Port der Chrome-Instanz her.
  3. Macht eine Treiberinstanz für Sie verfügbar, damit Sie ChromeDriver-Aufrufe tätigen können.
  4. Fährt den ChromeDriver-Prozess herunter und meldet sich von ChromeOS ab.

Folgen Sie dem Beispiel für Test desktopui_UrlFetchWithChromeDriver, um einen Test zu schreiben.

So gehts:

  1. Wrapper-Klasse importieren

    from autotest_lib.client.common_lib.cros import chromedriver
    
  2. Erstellen Sie eine Instanz von ChromeDriver und starten Sie Anrufe.

    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)|