【ハウツー】
WebDriverはWebブラウザを操作するためのJavaライブラリだ。WebアプリケーションのUIテストツールとして使用することが想定されており、JavaScriptを多用しリッチなUIを提供するアプリケーションのテストに効果を発揮する。
サポートするブラウザはFirefox、Safari(MacOS Xのみ)、Internet Explorer(Windowsのみ)となっている。また、実際のブラウザは使わずHtmlUnitを使用することも可能だ。この場合、Rhino(Javaで実装されたJavaScriptエンジン)を使用してブラウザ上で動作するJavaScriptの動作もエミュレートすることもできる。また、試験的にiPhone用のドライバの実装も進められているようだ。
同種のテストツールとしてはすでにSeleniumなどがあり、多くのユーザに利用されている。しかしSeleniumはWebブラウザ上で動作するJavaScriptで記述されていることからセキュリティ制約によってファイルアップロードやクロスドメインのテストを行うことが難しいといった欠点がある。WebDriverはブラウザそのものを制御するため、このような制約とは無縁だ。
WebDriverはGoogle Codeのダウンロードページから入手することができる。
WebDriverは以下のようにブラウザ毎にドライバーが提供されており、ダウンロードアーカイブもドライバーごとに分かれたものと、全てのドライバーをまとめたものが用意されている。
ダウンロードしたアーカイブに含まれるJARファイルをクラスパスに追加すればWebDriverを使う準備は完了だ。
なお、WebDriverはOpenQAのMavenリポジトリにもデプロイされているため、Mavenを利用している場合はこちらを利用するといいだろう。Mavenで使用するには、まずpom.xmlに以下のようにOpenQAのリポジトリを追加する。
<repositories>
...
<repository>
<id>openqa-releases</id>
<name>OpenQA Releases</name>
<url>http://nexus.openqa.org/content/repositories/releases</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
...
</repositories>
その後、利用するドライバに応じて以下のように依存性を追加すればよい。
<dependency>
<groupId>org.openqa.selenium.webdriver</groupId>
<artifactId>webdriver-htmlunit</artifactId>
<version>0.6.964</version>
</dependency>
<dependency>
<groupId>org.openqa.selenium.webdriver</groupId>
<artifactId>webdriver-firefox</artifactId>
<version>0.6.964</version>
</dependency>
| トマトを食べれば痩せられる!? -京大ら、新発見の成分で肥満改善効果を実証 [21:00 2/10] |
| JAXA、液体シリコン中に残存する共有結合を観察 -大口径ウェハの実現に期待 [20:11 2/10] |
| NEDOなど、熱膨張が小さな樹脂複合材料ペレットの量産化に成功 [19:22 2/10] |
| 理研、一般顕微鏡を蛍光顕微鏡に強化できるアダプタを試作して性能を実証 [19:15 2/10] |
| 天の川のブラックホールが小惑星を飲み込んでいる - NASAが発表 [18:08 2/10] |
|
激シブ!もう一度ゴルフ Ⅱ の魅力を味わってみませんか?【大阪オートメッセ2012】 [03:06 2/11] キャリア |
|
『ヘタリア』キャラソン、新シリーズが配信決定! [03:05 2/11] キャリア |
|
全国の温泉を擬人化したドラマCD、第1弾「草津」は櫻井孝宏さん! [03:05 2/11] キャリア |
|
柿原徹也さんの2ndミニアルバム「CONTINUOUS」2月15日発売 [03:04 2/11] キャリア |
|
アニメ「Fate/Zero」陣営ごとのお守りが発売決定 [03:03 2/11] キャリア |