機能と EdgeOptions

機能は、EdgeDriver セッションをカスタマイズおよび構成するために使用できるオプションです。 新しい EdgeDriver セッションを開始する方法については、「Microsoft Edge の自動化」を参照してください。 この記事では、Microsoft Edge でサポートされているすべての機能について説明し、EdgeDriver セッションにその機能を渡す方法について詳しく説明します。

機能は JSON マップとして WebDriver セッションに渡されますが、この方法で設定する必要はなく、推奨もされません。 WebDriver テスト フレームワーク (Selenium など) は、通常は便利なメソッドを備えた言語バインドを提供するため、JSON マップを自分で構成する必要はありません。 たとえば、Selenium は、EdgeOptions クラスを使用して機能を構成します。

機能を構成する方法の詳細については、優先する WebDriver テスト フレームワークのドキュメントを参照してください。 詳細については、「WebDriver テスト フレームワークを選択する」を参照してください。

EdgeOptions クラスの使用

EdgeOptions のインスタンスを作成します。これにより、Microsoft Edge 固有の機能を設定するための便利なメソッドが提供されます。 EdgeOptions オブジェクトを構成したら、EdgeOptionsEdgeDriver コンストラクターに渡します。

var options = new EdgeOptions();
options.AddExtensions("/path/to/extension.crx");
var driver = new EdgeDriver(options);

便利なメソッドが関連付けられていない機能を使用するには、AddAdditionalEdgeOption メソッドを使用します。 機能の完全な名前と正しい型の値を渡す必要があります。 受け入れられる機能と値の型の完全なリストについては、「EdgeOptions オブジェクト」を参照してください。

options.AddAdditionalEdgeOption("wdpAddress", "remotehost:50080");

認識されている機能

EdgeDriver が受け入れる標準機能については、「Selenium のドキュメント」および「W3C WebDriver 標準」を参照してください。 この記事では、Microsoft Edge に固有の機能のみを一覧表示します。

EdgeOptions オブジェクト

Microsoft Edge 固有の機能のほとんどは、EdgeOptions オブジェクトを通じて公開されます。 一部の言語では、機能は EdgeOptions クラスによって実装されます。 他の言語では、機能は DesiredCapabilitiesms:edgeOptions ディクショナリに格納されます。

機能 種類 詳細
args 文字列のリスト 起動時に Microsoft Edge プロセスに渡すコマンド ライン引数のリスト。 関連付けられた値を持つ引数は、= 記号 (例: ['start-maximized', 'user-data-dir=/tmp/temp_profile']) で区切る必要があります。 WebView2 アプリを起動する場合、これらの引数は、基になる Microsoft Edge ブラウザー プロセスではなく、アプリに渡されます。 WebView2 アプリの起動時にブラウザー プロセスに引数を渡すには、代わりに webviewOptions.additionalBrowserArguments を使用します。
binary string 使用する Microsoft Edge バイナリへのパス (macOS では、パスはアプリだけでなく実際のバイナリである必要があります。例: /Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge)。
debuggerAddress string hostname/ip:port の形式で接続するデバッガー サーバーのアドレス。例: 127.0.0.1:38947
detach ブール値 既定値 = false です。 false の場合、WebDriver ローカル エンドがセッションを閉じていなくても、WebDriver サービスがシャットダウンしたときに Microsoft Edge が終了します。 true の場合、WebDriver ローカルエンドがセッションを閉じる場合にのみ Microsoft Edge が終了します。 true の場合、WebDriver ローカル エンドがセッションを閉じない場合、EdgeDriver は、Microsoft Edge インスタンスで使用される一時ユーザー データ フォルダーをクリーンアップしません。
excludeSwitches 文字列のリスト Microsoft Edge の起動時に EdgeDriver がデフォルトで渡すことを除外する Microsoft Edge コマンド ライン スイッチのリスト。 スイッチの -- プレフィックスは使用しないでください。
extensions 文字列のリスト 起動時にインストールする拡張機能のリスト。 リスト内の各項目は、base-64 でエンコードされたパックされた拡張機能 (.crx) である必要があります。
localState ディクショナリ ユーザー設定の名前と値で構成される各エントリを含むディクショナリ。 ユーザー設定は、ユーザー データ フォルダー内のローカル状態ファイルに適用されます。
minidumpPath string Microsoft Edge ミニダンプを格納するディレクトリ。 (Linux でのみサポートされます)。
mobileEmulation ディクショナリ deviceName の値、または deviceMetrics および userAgent の値を持つディクショナリ。
perfLoggingPrefs ディクショナリ パフォーマンス ログのユーザー設定を指定するオプションのディクショナリ。 詳細については、「perfLoggingPrefs オブジェクト」を参照してください。
prefs ディクショナリ ユーザー設定の名前と値で構成される各エントリを含むディクショナリ。 ユーザー設定は、使用中のユーザー プロファイルにのみ適用されます。 例については、Microsoft Edge のユーザー データ フォルダーにある Preferences ファイルを参照してください。
wdpAddress string hostname/ip:port の形式で接続する Windows デバイス ポータル サーバーのアドレス。例: 127.0.0.1:50080。 詳細については、「リモート デバッグ - Windows 10 デバイス」を参照してください。
wdpPassword string Windows デバイス ポータル サーバーに接続するときに使用するオプションのパスワード。 サーバーで認証が有効になっている場合は必須です。
wdpUsername string Windows デバイス ポータル サーバーに接続するときに使用するオプションのユーザー名。 サーバーで認証が有効になっている場合は必須です。
wdpProcessId integer 実行中の WebView2 UWP アプリにアタッチする場合に使用する必要があるプロセス ID (例: 36590)。 この情報は http://<Device Portal URL>/msedgebrowserProcessId でご覧いただけます。
webviewOptions ディクショナリ WebView2 アプリの起動時に WebView2 環境を構成するために使用できるオプションのディクショナリ。 詳細については、「webviewOptions オブジェクト」を参照してください。
windowsApp string 起動する Microsoft Edge アプリ パッケージのアプリケーション ユーザー モデル ID (例: Microsoft.MicrosoftEdge.Stable_8wekyb3d8bbwe!MSEDGE)。 Windows デバイス ポータルを使用して Windows 10X デバイスまたはエミュレーターに接続するときは、binary ではなく windowsApp を使用します。
windowTypes 文字列のリスト ウィンドウ ハンドルのリストに表示されるウィンドウ タイプのリスト。 Android Webview 要素にアクセスするには、リストに webview を含めます。

perfLoggingPrefs オブジェクト

perfLoggingPrefs ディクショナリの形式は次のとおりです。 すべてのキーはオプションです。

キー 既定値 詳細
bufferUsageReportingInterval 正の整数 1000 DevTools トレース バッファーの使用イベント間の要求されたミリ秒数。 たとえば、1000 の場合、1 秒あたり 1 回、DevTools はトレース バッファーの使用状況を報告します。 レポートでバッファー使用率が 100% であることを示す場合は、警告が発行されます。
enableNetwork ブール値 true ネットワーク ドメインからイベントを収集します (または収集しません)。
enablePage ブール値 true ページ ドメインからイベントを収集します (または収集しません)。
traceCategories string (空) トレース イベントを収集する Microsoft Edge トレース カテゴリのコンマ区切りの文字列。 指定されていない文字列または空の文字列を指定すると、トレースが無効になります。

webviewOptions オブジェクト

webviewOptions ディクショナリは、WebView2 アプリの起動時に WebView2 環境を構成するために使用されます。 形式は次のとおりです。 すべてのキーはオプションです。

キー 既定値 詳細
browserExecutableFolder string (空) 使用する固定バージョンの WebView2 ランタイムを含むフォルダーへのパス。 WebView2 で固定バージョンのランタイム配布を使用する方法の詳細については、「WebView2 アプリと WebView2 ランタイムを配布する」を参照してください。
userDataFolder string (空) WebView2 が使用するユーザー データ フォルダーへのパス。 userDataFolder が指定されていない場合、Microsoft Edge WebDriver は一時的なユーザー データ フォルダーを作成します。 WebView2 でユーザー データ フォルダーを管理する方法の詳細については、「ユーザー データ フォルダーの管理」を参照してください。
additionalBrowserArguments 文字列のリスト WebView2 が起動時にブラウザ プロセスに渡すコマンドライン引数のリスト。 関連付けられた値を持つ引数は、= 記号 (例: ['start-maximized', 'log-level=0']) で区切る必要があります。
releaseChannelPreference string 使用する優先 WebView2 の常緑ランタイム配布。 または "stable" になります。"canary"

返される機能

次のリストには、新しいセッションを作成するときに EdgeDriver が返す Microsoft Edge 固有の機能がすべて含まれています。

機能 種類 詳細
msedge.msedgedriverVersion string EdgeDriver のバージョン。
msedge.userDataDir string Microsoft Edge インスタンスによって使用されるユーザー データ フォルダーへのパス。