すべての ChromeOS テストイメージには、/usr/local/chromedriver/ に ChromeDriver バイナリがインストールされています。バイナリは、そのテストイメージの Chrome と同じバージョンに更新されます。つまり、常に ChromeDriver の最新ビルドを使用することになります。
テストで ChromeDriver バイナリの安定版に対して実行することを想定している場合は、テストで独自のコードを記述して特定のバイナリをダウンロードし、/usr/local/chromedriver/ のバイナリを置き換える必要があります。
Autotest テストで ChromeDriver を使用する
ChromeDriver を使用して ChromeOS を操作するテストを作成できます。ChromeOS/Autotest で利用可能な ChromeDriver を使用するためのラッパー クラスがあります。ラッパー クラスはコンテキスト マネージャー タイプとして機能し、次のタスクを処理します。
- テレメトリーを使用して ChromeOS にログインします。
- テスト対象デバイス(DUT)でリモートモードで ChromeDriver を起動し、ログイン後に Chrome インスタンスのリモート デバッグポートに接続します。
- ChromeDriver の呼び出しを行うためのドライバ インスタンスを公開します。
- ChromeDriver プロセスをシャットダウンし、ChromeOS からログアウトします。
次のテストの例に従ってください。desktopui_UrlFetchWithChromeDriver
手順:
ラッパー クラスをインポートします。
from autotest_lib.client.common_lib.cros import chromedriverChromeDriver のインスタンスを作成して呼び出しを行います。
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)|