TOPシステム開発> 面倒なテストコード記述をサポートするSelenium IDE




Selenium
SeleniumでWebアプリケーションテストを自動化

第1回:Webブラウザを使ったテストツールSeleniumとは

著者:DTS  大田尾 一作   2007/5/18
前のページ  1  2  3
面倒なテストコード記述をサポートするSelenium IDE

   Seleniumのテストコード体系はシンプルで理解しやすいものですが、操作の1つ1つを記述していく作業はやはり大変なものです。これはJUnitをはじめとする単体テストのフレームワークでもテストコードの記述に多くの工数を要するのと同様です。

   しかしSeleniumには、この面倒なテストコード記述をサポートする強力なツール「Selenium IDE」というものが存在します。このSelenium IDEは「Webブラウザの操作を記録し、Seleniumのテストコードを生成してくれる」という画期的なツールで、Firefoxの拡張機能として提供されています。

   実はSeleniumが現在大変注目を浴びる存在になったのも、このSelenium IDEの存在が大きかったのではないかと思います。Seleniumでテストケースを作成する際、まずSelenium IDEで一通り手動で操作を行ったものを記録してテストコードを生成します。それに手を加えて確認していくという方法によって効率的にテストケースの作成が行えるようになりました。

   なお余談ですが、Selenium IDEの開発者は日本人(KBMJ笠谷氏)で、Selenium IDEはきちんと日本語対応しています。

Seleniumファミリー

   先ほどSelenium IDEという単語がでてきましたが、実はSeleniumというのは1つの製品ではありません。Seleniumは以下の3つのプロダクトで構成されているプロジェクトなのです。

Selenium Selenium Core Seleniumの中核機能
Selenium Remote Control リモートサーバ対応や開発言語対応
Selenium IDE ブラウザ操作の記録とテストコード生成・実行

表3:Seleniumプロジェクトの構成

   Selenium CoreはSeleniumの中核機能であり、Webブラウザの操作や検証を行うコマンド機能などを提供しており、JavaScriptで実装されています。

   Selenium Remote Control (Selenium RC)は、その名の通りリモートのサーバに対してテスト実行できるように拡張したプロダクトです。また先ほど説明した開発言語によるテストコード記述に対応しているのもこのRCです。

   Selenium IDEは、上述したようにWebブラウザの操作を記録し、その操作に対するSeleniumコードを生成してくれるFirefoxのアドオン(拡張プラグイン)として提供されています。生成するコードの形式はHTMLや各開発言語に対応しています。

   またIDEとして単体でSeleniumの実行環境として動作させることができるので、テストコードを読み込んで実行させることも可能です。将来のバージョン(0.9.0予定)では、一連のテストケースを連続して実行できる機能(テストスイート対応)も予定されているとのこと。

   本連載では、Seleniumの基本的な使用方法とHTMLでのテストコード記述に関してはSelenium Coreを中心に、開発言語でのテストコード記述に関してはSelenium RCを中心に解説していきます。Selenium IDEについては適宜必要となった場面で触れていきます。また特に断りなく「Selenium」といった場合はSelenium Core又はSelenium全体を指すものとします。

   今回は最初ということもあり、Seleniumの紹介で終わってしまいました。次回は実際にデモを動かすことでSeleniumのすごさを体感していただこうと思います。

前のページ  1  2  3


株式会社DTS 大田尾 一作
著者プロフィール
株式会社DTS  大田尾 一作
技術SE部在籍。業務内容は、Java/Web開発に役立つ技術の調査・推進。Selenium関連では、開発コミュニティにリファレンスガイド日本語訳を寄贈。ブログ(http://d.hatena.ne.jp/otao/)にてSelenium最新情報、Tips等も掲載。


INDEX
第1回:Webブラウザを使ったテストツールSeleniumとは
  Seleniumとは
  Seleniumの特徴
面倒なテストコード記述をサポートするSelenium IDE