第1章. セレンの入門書
この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com
Seleniumは、ウェブブラウザの自動化を可能にするライブラリとツールのセットで構成されるオープンソースのスイートである。Selenium は、3つのコアコンポーネントを持つ アンブレラプロジェクトである:WebDriver、Grid、IDE(統合開発環境)である。Selenium WebDriverは、プログラムでブラウザを駆動できるライブラリである。したがって、我々はSelenium WebDriverを使って、Webサイトをナビゲートし、実際のユーザが行うようなWebページとの対話(例えば、リンクのクリック、フォームへの入力など)を、自動化された方法で行うことができる。Selenium WebDriver の主な用途は、ウェブアプリケーションの自動テストである。その他のSeleniumの用途としては、ウェブベースの管理タスクの自動化やウェブスクレイピング(ウェブデータの自動抽出)がある。
この章では、Selenium コアコンポーネントの包括的な概要を提供する:WebDriver、Grid、IDE である。次に、Selenium のエコシステム、すなわち、Selenium の周りの他のツールと技術をレビューする。最後に、Selenium に関連するソフトウェアテストの基礎を分析する。
セレン・コア・コンポーネント
ジェイソン・ハギンズと ポール・ハマントは、Thoughtworksで働いていた2004年にSeleniumを作成した。彼らは、Hewlett-Packard社が開発した既存のテストフレームワークであるMercuryに対抗して、「Selenium」という名前を選んだ。セレンという化学物質が水銀の毒性を軽減することが知られているため、この名前には意味がある。
Seleniumの初期バージョン(現在ではSelenium Coreとして知られている)は、ウェブアプリケーションにおけるユーザのアクションを偽装するJavaScriptライブラリである。Selenium Coreはこのタスクを達成するために、いわゆるSeleneseコマンドを解釈する。これらのコマンドは次の3つの部分からなるHTMLテーブルとしてエンコーディングされる:コマンド(URLを開く、リンクをクリックするなど、ウェブブラウザで実行されるアクション)、ターゲット(与えられたコンポーネントの属性など、ウェブ要素を特定するロケータ)、値(ウェブフォームのフィールドに入力されたテキストなど、オプションのデータ)。
Huggins氏とHammant氏は、SeleniumRemote Control(RC)と呼ばれる新しいプロジェクトで、Selenium Coreにスクリプトレイヤーを追加した。SeleniumRCはクライアント、サーバアーキテクチャに従う。クライアントはバインディング言語(JavaやJavaScriptなど)を使用して、SeleneseコマンドをSelenium RCサーバと呼ばれる中間プロキシにHTTP経由で送信する。このサーバは必要に応じてWebブラウザを起動し、WebサイトにSelenium Coreライブラリを注入し、クライアントからのリクエストをSelenium Coreにプロキシする。さらに、Selenium RC Serverは、ターゲットとなるWebサイトを、注入されたSelenium ...
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