システムテスト自動化ツールSeleniumIDE
はじめに
システム開発の作業工程の一つである、システムテスト。 そのテストを自動でできるツールがあるということで、どのようなものか実際に使ってみました。
_Seleniumとは: webブラウザを使ってwebアプリケーションをテストするツール。 Seleiumは以下3つのプロダクトで構成されています。
- Selenium Grid
- Selenium IDE
- Selenium RC(Remote Control)_
※2011年にgoogleで開発していたWebdriverと統合し、Selenium Webdriverとしてリリースされました。
Seleniumをダウンロード
今回はSeleniumIDEというfirefoxのアドオンを使います。
まずはSeleniumのダウンロードサイトへ
※ブラウザはfirefoxを使います。
ダウンロードページからアドオンのインストールができます。


アドオンへのインストールが完了すると、ブラウザの右上にIDEのアイコンが表示されます。

※googlechromeやIEでもこのIDE利用することができますが、 firefoxとは異なり、各ブラウザのドライバーやselenium-server-standalone-x.xx.x.jarのインストールも必要です。 詳細については割愛します。
・早速テストをためしてみます
インストール後に表示されたIDEのアイコンをクリックすると操作画面のウィンドウが開きます。
今回はfacebookログインで、ログイン失敗時に出るエラーメッセージの有無で、 ログイン動作確認(失敗した時の場合)をしてみます。 テストはgoogleでfacebookを検索→facebookを開く→ログイン という流れで行いました。
まず、SeleniumIDEで動作の記録を開始(右上の赤丸ボタンをクリック)
facebookのログインページを開き、ログイン失敗になるように、不正な値を
入力します。

Seleniumの画面を見ると、ブラウザでの操作情報が記録されています。 ここに、追加のコマンドを挿入。

コマンド:verifyTextPresent
対象:入力されたメールアドレスまたは携帯電話番号はアカウントと一致しません。アカウントの登録
値:入力なし
verifyTextPresent:対象である要素のテキストが値(パターン)と一致するか検証する
テストを実行します。 結果は左下に表示されます。 テスト結果は成功です。

おわりに
初めて使ってみましたが、ブラウザ上で操作が可能なので抵抗なく使うことができました。 以前社内システムの開発グループに所属していたことがありますが、 プログラマーではなかったので、テスト作業をよくやっていました。 何度も同じテストを繰り返す作業って時間もかかるし、意外に根気の いる作業だったりしますよね。 同じことを何度も繰り返すサイトや、長期継続的にリリースを行うようなサイト 人でが足りないなんて時には、作業工数を減らすという意味でも使えるツールかもしれません。