第4章. ブラウザに依存しない機能
この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com
この章では、異なるウェブブラウザで相互運用可能な Selenium WebDriver の機能をレビューする。このグループの中で、関連する多目的特性は JavaScript を実行することである。また、Selenium WebDriver API はページとスクリプトのロードのタイムアウトを設定できる。もう一つの便利な機能は、ブラウザ画面のスクリーンショット、または指定された要素に対応する部分のみのスクリーンショットを作成することである。それから、WebDriverを使用して、ブラウザのサイズや位置、履歴、クッキーなど、制御されたブラウザのさまざまな側面を管理することができる。次にWebDriverは、ドロップダウン・リスト(HTMLセレクト・フィールドやデータ・リスト)、ナビゲーション・ターゲット(Windows、タブ、フレーム、iframe)、ダイアログ・ボックス(アラート、プロンプト、確認、モーダル・ダイアログ)など、特定のWeb要素を制御するための様々なアセットを提供する。最後に、Web ストレージを使用してローカルデータとセッションデータを扱い、イベントリスナーを実装し、Selenium WebDriver API によって提供される例外を使用する方法を発見する。
JavaScriptを実行する
JavaScriptは、、すべての主要ブラウザでサポートされている高水準プログラミング言語である。DOM操作、ユーザ対話、リモートサーバからのリクエスト/レスポンス処理、or正規表現など、様々な関数の中で、ウェブアプリケーションのクライアント、サーバ側でJavaScriptを使用することができる。テスト自動化にとって幸運なことに、Selenium WebDriverは任意のJavaScriptを注入し実行することができる。そのために、Selenium WebDriver API はJavascriptExecutor というインタフェースを提供している。表 4-1 に、このインタフェースで利用可能なパブリックメソッドを、同期スクリプト、ピンスクリプト、非同期スクリプトの 3 つに分類して紹介します。以下のサブセクションでは、詳細を説明し、さまざまな例を通してその使用方法を説明する。
| カテゴリー | メソッド | 戻る | 説明 |
|---|---|---|---|
同期スクリプト |
|
|
現在のページでJavaScriptコードを実行する。 |
スクリプトをピン留めする |
|
|
JavaScriptの一部をWebDriverセッションにアタッチする。ピン留めされたスクリプトは、WebDriver セッションが生きている間、複数回使用できる。 |
|
|
以前にピン留めされていたスクリプトを WebDriver セッションにデタッチする。 |
|
|
|
ピン留めされたすべてのスクリプトを収集する(各スクリプトは一意の |
|
|
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access