TOPシステム開発> Seleniumとは
Selenium
SeleniumでWebアプリケーションテストを自動化

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

著者:DTS  大田尾 一作   2007/5/18
1   2  3  次のページ
Seleniumとは

   この連載は、WebアプリケーションのテストツールであるSelenium(セレニウム)についてサンプルを用いながら概要と基本的な使い方を解説していきます。本連載第1回の今回は、Seleniumの概要について紹介します。

   Seleniumとは、Webブラウザを使ってWebアプリケーションをテストするツールです。この「Webブラウザを使って」というのが非常に大きなポイントで、人が手でWebブラウザを操作する代わりにSeleniumがWebブラウザを操作してくれるのです。

   そして単純に操作するだけでなく、例えばエラーメッセージが正しく表示されているかといった検証も行うことができます。つまり、今まで人手を必要としていたWebブラウザを使った試験が自動化できるものなのです。そのため数百項目もあるテストも、クリック1回で実施できます。

テストを自動化するということ

   より重要なことは「自動化することによって試験を繰返し実施できる」ことです。

   例えば新機能を追加した際やバグを修正した際に、他の既存機能に悪影響がでていないか(デグレードが発生していないか)を確認することは重要です。このような場合、再帰試験(リグレッションテスト)として既存機能の試験項目を再度実施します。

   しかし再帰試験として既存の試験項目をすべて実施することは時間的な制約が大きく、また試験担当者としても同じことを繰返すことになるため心理的な負担が伴います。従って開発現場ではなかなか再帰試験を完璧に実施するのは困難かもしれません。しかしテストを自動化できれば、こういった問題を解決できます。

   これまでも、単体テストフェーズにおいてはJUnitなどのテスティングフレームワークが存在していました。しかしWebブラウザを用いた結合試験や総合試験のフェーズでは、どうしても人手に頼らざるを得ませんでした。そこでSeleniumを利用することで、このWebブラウザを使ったテストフェーズの自動化を行うことができるようになります。


オープンソースソフトウェアであること

   またSeleniumはソースコードが公開されているオープンソースソフトウェア(OSS)として開発されており、無償で使用することができます。OSSのライセンスはApache 2.0 Licenseであり、比較的柔軟に運用することができます。Seleniumの開発コミュニティは活発に活動しており、新機能の追加やバグ修正版なども比較的早いサイクルでリリースされています。

   ちなみに開発コミュニティにはTipsなども載っているWikiもあり、若干古いバージョン(0.7.0)になりますがリファレンスマニュアルの日本語訳も登録されています。

Seleniumの公式Webサイト
http://www.openqa.org/selenium/

Seleniumのリファレンスマニュアルの日本語訳
http://wiki.openqa.org/display/SEL/Selenium+0.7+Reference+(Japanese)

   なおWebブラウザを使った試験は、Webアプリケーション開発では「結合試験」や「総合試験」に相当すると思いますが、本連載では結合試験を例に解説していきます。

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