機能と EdgeOptions
機能は、EdgeDriver
セッションをカスタマイズおよび構成するために使用できるオプションです。 新しい EdgeDriver
セッションを開始する方法については、「Microsoft Edge の自動化」を参照してください。 この記事では、Microsoft Edge でサポートされているすべての機能について説明し、EdgeDriver
セッションにその機能を渡す方法について詳しく説明します。
機能は JSON マップとして WebDriver セッションに渡されますが、この方法で設定する必要はなく、推奨もされません。 WebDriver テスト フレームワーク (Selenium など) は、通常は便利なメソッドを備えた言語バインドを提供するため、JSON マップを自分で構成する必要はありません。 たとえば、Selenium は、EdgeOptions
クラスを使用して機能を構成します。
機能を構成する方法の詳細については、優先する WebDriver テスト フレームワークのドキュメントを参照してください。 詳細については、「WebDriver テスト フレームワークを選択する」を参照してください。
EdgeOptions クラスの使用
EdgeOptions
のインスタンスを作成します。これにより、Microsoft Edge 固有の機能を設定するための便利なメソッドが提供されます。
EdgeOptions
オブジェクトを構成したら、EdgeOptions
を EdgeDriver
コンストラクターに渡します。
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
クラスによって実装されます。 他の言語では、機能は DesiredCapabilities
の ms: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>/msedge の browserProcessId でご覧いただけます。 |
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 インスタンスによって使用されるユーザー データ フォルダーへのパス。 |