スーパー・テストツールSelenium
転職して一番のカルチャーショックは、若い人が多いことでも残業しないことでもSubversionでもなく、スーパー・テストツールのSeleniumです。転職しなかったら存在すら知らなかっただろうと思われるこのSelenium。どんなことができるツールかというと、ウェブサイトのフォームの動作や表示の確認をブラウザ上で自動的に実行ができるツールなのです。
前職で「試験」をすることがメイン業務の一つだったわけですが、手動でやろうとするとかなりめんどくさい作業でした。ページを開いて、IDとパスワードを入力して、フォームに値を入力してボタンを押して、確認画面の表示内容を一つ一つ目で確認したり、必須項目を省略するとエラーが発生するかどうか、数値以外を入力したらエラーが発生するか、その際のエラーコードは設計書通りのエラーコードかなどなどを、設計書とにらめっこしながらやっていたわけです。
そういった面倒な試験を自動でやってくれるのが、このスーパー・テストツールSeleniumなんです。とりあえずダマされたと思って、公式サイトのDownloadからSeleniumのzipファイルを落としてきてみてください。そして、ファイルを展開したら、seleniumフォルダに入っている「TestRunner.html」を開いてください。なにやら英語が並んでいますが、「Selenium TestRunner」って書いてあるグレーの領域にある「All」ボタンを押してみましょう。凄まじい勢いでサンプルの試験が始まります。結果は試験をパスすると緑色表示になり、エラーになると赤色表示になるので一目瞭然。このサンプルでは、ブラウザの設定でポップアップをブロックしていると、二つくらいエラーになると思います。マシンのスペックが高いほど高速で動きます。
使い方は、テストのサンプルを見て学んでください。HTMLのテーブルタグで記述するだけなので、おそらく習得しやすいはずです(まだSeleniumのテストは書いてないので分かりませんけど)。Seleniumを使う注意点としては、ブラウザのキャッシュの影響を受けやすいという所です。キャッシュのせいで、想定する文字が正しく表示されずエラーになる、ということが頻繁に発生します。
とはいえ、このSeleniumがあればWebアプリケーションの動作確認が格段に楽になります。手動でやってたイライラが、かなり解消されます。ちょっとプログラムを修正したときに、他の機能がデグレしてないかどうかを確認するのに便利です。もちろん全部がSeleniumで試験できるわけではなく、手動で確認しないといけない部分もありますが。
いやぁ、Selenium作った人は天才。
Googleで検索してみると、Seleniumの公式サイトは今のところ1位になっていません。まだあまり言及されてないのかな?と思いました。で、なんとなく検索結果上位にあった「はてなダイアリー – Seleniumとは」を見てみると、・・・・あらまぁ、見たことあるidの人のダイアリーがたくさん・・・。(笑)
ほー、JavaScript使ってんのやー。
アプローチがおもしろい。
これも一種のajax!?
わたしゃ、JMeterで感動してました。。。
JMeter?知らないのでぐぐってみました。なにやら難しげなテストツールですな。でも、テストを格段に楽にしてくれるツールって感動しますよねー。
Seleniumは、その通り、Ajaxの技術が使われているみたいです。JavaScriptテラすばらし。