2012年9月3日月曜日

Selenium2-WebDriver

2010年8月、なんか業務が暇だったのかよく覚えてないが
WebブラウザをJavaで操作したいと思ってた。(スクレイピングネタとかだっけな…)

そのときに、ググった結果以下の2つがヒットした。
•Selenium
•WebDriver

そのときは、ちょこっとWebDriverを触って終わった。
そんで僕が、SpringやらJSFやらCassandraに打ち込んでいる1年間に、
SeleniumがWebDriverを統合しちゃってて、それを半年後に知った僕は今更打ち込み始めている。

現在のSelenium2には、大きく分けて以下があるようだ。
•SeleniumIDE
•SeleniumRC(RemoteControl)
•SeleniumGrid
•SeleniumWebDriver


SeleniumIDE FireFoxのプラグインとして提供されている、Seleniumのテストケース/テストスイーツを作成するための物だ。
これはすごく便利でWebブラウザ上のオペレーションを記録でき、その内容をそのままJavaやPHPといった多数の言語のテストケースにエクスポートが可能である。



SeleniumRCこれは、前から存在しているSeleniumのテストツール本体。 テストサーバを建てて、そのサーバに対して上記のIDEで作成したテストケース/テストスイーツを喰わせることによってテストを行う。テストサーバといってもjarを実行するだけのとても簡単な手順だった。このSeleniumRCはレポートも出してくれるのだが、僕が期待したクオリティではなかった。


SeleniumGrid SeleniumRCを複数たてて、その前にハブとか呼ばれるものを1個建てて分散させてテストを実行させるためのもの。
それ以上は調べてない。。。。


SeleniumWebDriver RC、Gridとは異なる実行形態のテストツール。 単純Javaアプリケーションでも容易に利用ができ、拡張性も高い。 WebDriverは、SeleniumRCがJavaScriptで動くのに対してWebブラウザ自体や、ドライバを介してブラウザを操作するイメージを僕は持っている。故にJavaScriptのセキュリティの壁を乗り越えたテストケースを組めるみたい。

僕が興味があるのは、WebDriver。
そして目下勉強中。。。。
困った事とか、ちょこちょこ書いていきます。

Seleniumは、業界の敵なのかもしれないが、、、
無駄なコストとも思える回帰テストを嫌がる雇い主や作業者は山ほどいるはずだ。
ただ、サクッと使いこなせるのであればもうちょっと広まってていいはず。
早めに使いこなせるようになって生き残らねば…



0 件のコメント:

コメントを投稿