Selenium-RCヤバすぎ

Selenium-RCって今までのdrivenモードでJavaとかRubyとかでテストコード書くっていうどっちかっていうと単体の延長みたいな?イメージだったんだけど、実はHTML(Selence)のテストケースも使えることが判明。(よく見ろよ俺)
で、こちらを参考にさせていただいて、一通り動作確認まで実施。
SeleniumRCのいいところ。

  • テストするアプリで、他サイトへ飛んだりする検証ができる。(他の方法もあるけど)
  • バッチ起動ができる。→まだやってないけど、複数のTestSuiteを連続でテストできる。
  • テスト結果がhtmlで残る。TestRunnerの真ん中の画面(成功・失敗で色がつくとこ)のキャプチャが保存されるイメージ
  • user-extensions.jsの拡張にも対応。←DLしたjarだとダメなので、java -cp でRCを起動する。
  • テストする対象のドメインコマンドラインで指定するから、テストケースでstoreGlobalとかしてドメイン指定する必要なし。 →openは基本的に全部相対パスでOK。 (但し、storeGlabalはhref属性の絶対パス検証とかには使えると思う)


簡単な手順。
(1)DLする
(2)zipの中にあるselenium-server.jarを展開
(3)展開してできたselenium-server/core/scripts/配下のuser-extensions.jsをいじる
(4)RCを起動するのはjarを展開してできたselenium-server/配下


バッチファイル。.batの書式がイマイチよくわからんけど、linuxでシェルならもっと簡単&複雑なこともいろいろやれそう♪
selenium-test-exec.bat

set SELRC_DIR="C:\work\selenium-server"
set BROWSER="*iexplore"
set TESTDOMAIN="http://192.168.0.99:8080"
set TESTSUITE="C:\workspace\all-in-one-eclipse\SeleniumTest\testhtml-it\
               01_Login_Test\01_Login_TestSuite.html"
set TESTRESULT="C:\tmp\results.html"
set TIMEOUT=30

cd %SELRC_DIR%
java -cp . org.openqa.selenium.server.SeleniumServer -htmlSuite %BROWSER% 
     %TESTDOMAIN% %TESTSUITE% %TESTRESULT% -timeout %TIMEOUT%

(はみ出ちゃうので改行してます)

その他気づいたことなど

  • firefoxだと起動しない!?→フォーラムにも関連スレあるっぽい。後で見る。
  • テストケースはTestSuiteと同じフォルダに置かないとNGになる。1つ上の階層においてあるテストケース(他のTestSuiteと共用してた)は404になってしまう。
  • 一度RC起動しちゃうと(特に上記の方法だと)自動で全テストケースを流しちゃう。手動でやりたい場合の方法は?


Seleniumの手順書に書かなかったのはマズイかなぁ。。ま、次版に載せるってことでw