
ブラウザのテストで楽するためにSelenium2 WebDriverを試しています。Java・Python・Rubyなどでスクリプトを記述することもできるし、JUnitやRSpec形式でエクスポートもできるので、そのうちCIサーバでぶりぶりしたいなと。
今回は、Windows7環境でSelenium2 WebDriver+RSpec実行環境を作ります。
Rubyのインストール
Windows用のインストーラーがあるのでそれを利用。バージョンはRuby 1.9.3-p194を使いました。インストールは普通にダブルクリックするだけで、PATHに追加にチェックを入れるか、自分でPATHに追加しておくと便利です。
gemのインストールでDevKitなるものがいると怒られるので、同じサイトからDevKitも入れておきます。今回は「DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe」をダウンロードしました。インストールはこちらにも書かれているのですが、ダウンロードしたexeをdevkitなどのフォルダにおいて解凍し、devkit\binにPATHを通しておきます。そして、以下を実行。
https://gist.github.com/daipresents/fd0c5836a18c27197f00f60e881bd3c3.js?file=gistfile1.txt
config.yml ができてRubyのインストールディレクトリが記述されているはずです。
https://gist.github.com/daipresents/fd0c5836a18c27197f00f60e881bd3c3.js?file=gistfile2.txt
確認できたら以下を叩いて終わり。
https://gist.github.com/daipresents/fd0c5836a18c27197f00f60e881bd3c3.js?file=gistfile3.txt
Gemのインストール
RSpecを使いたいのでRSpecをインストール。
https://gist.github.com/daipresents/fd0c5836a18c27197f00f60e881bd3c3.js?file=gistfile4.txt
Selenium WebDriver Ruby Bindingをインストール
https://gist.github.com/daipresents/fd0c5836a18c27197f00f60e881bd3c3.js?file=gistfile5.txt
これで準備終わり。
RSpecを使ってテストを実行する
FirefoxのSeleniumプラグインを使ってテストを作り、エクスポートするだけでスクリプトが出来上がります。

RSpec形式を選ぶと
https://gist.github.com/daipresents/fd0c5836a18c27197f00f60e881bd3c3.js?file=gistfile6.txt
ソースに日本語がある場合は「invalid multibyte char (US-ASCII)」とか「syntax error」とか怒られるので、ファイルの先頭に以下を記述。
https://gist.github.com/daipresents/fd0c5836a18c27197f00f60e881bd3c3.js?file=gistfile7.txt
あとはエクスポートしたファイルを引数にRSpecを叩くだけ。
https://gist.github.com/daipresents/fd0c5836a18c27197f00f60e881bd3c3.js?file=gistfile8.txt