TOPシステム開発> テストケースを記述する
Selenium
SeleniumでWebアプリケーションテストを自動化

第6回:SeleniumRC−Javaによるテストの作成と実施

著者:DTS  大田尾 一作   2007/10/17
前のページ  1  2  3  4
テストケースを記述する

   ではJavaでテストケースを記述していきます。HTMLの場合と比較するため、HTMLで作成したのと同じ試験項番1-1をJavaで実装してみることにしましょう。

   Javaなどの開発言語を使う場合でも、テストコードの作成方法はHTMLの場合と基本的には同じです。すなわち、手動での操作手順をSeleniumコマンドに置き換えていきます。その際に使用するコマンドはHTMLの場合とほとんど同じですが、テストコードの書き方は以下のようになります。なお検証はSeleniumコマンドとJUnitのメソッドを組み合わせて実施し、組み合わせ方には2つのパターンがあります。
Webブラウザの操作
  • Seleniumオブジェクトのメソッドとして実行する
  • 例:selenium.open("/MyMibo/index.jsp");
パターン1:対象の値を取得して検証する
  • Seleniumオブジェクトのget〜メソッドで値を取得し、JUnitのassertEqualsで検証
  • 例:assertEquals("MyMeibo 社員一覧", selenium.getTitle());
パターン2:対象が指定した条件を満たすか検証する
  • Seleniumオブジェクトのis〜メソッドでbooleanを取得し、JUnitのassertTrue・assertFalseで検証
  • 例:assertTrue(selenium.isTextPresent("社員一覧"));

表3:組み合わせ方

   Seleniumオブジェクトで扱えるメソッドについては、以下のAPIドキュメントを参考にしてください。


   試験項番1-1でどのようなSeleniumコマンドを使用していたか、HTMLのテストケースtableをふりかえってみます。

01_EmpDisplay_Test_001
open /MyMeibo/index.jsp
assertTitle MyMeibo 社員一覧
verifyTextPresent 社員一覧
verifyElementPresent id=emptable

表4:試験項番1-1のHTMLテストケースtable

   これを基にJavaのテストコードを実装すると以下のようになります。親クラス(TestBaseクラス)でSeleniumオブジェクトのインスタンスseleniumを生成しているので、各テストケースクラスでは直接seleniumインスタンス変数を使用することができます。

IT01EmpDisplayTest.java
package test.selenium.it;

public class IT01EmpDisplayTest extends TestBase {


   // 1-1
   public void test001() {
      // URLを開く
      selenium.open("/MyMeibo/index.jsp");

      // タイトルの検証
      assertEquals("MyMeibo 社員一覧", selenium.getTitle());

      // 表示文字列の検証
      assertTrue(selenium.isTextPresent("社員一覧"));

      // 社員一覧テーブルが表示されているか検証
      assertTrue(selenium.isElementPresent("id=emptable"));
   }

   // 1-2
   public void test002() {

   }

   // 1-3
   public void test003() {

   }

}


テストの実施

   テストの実施は、先ほどの動作確認と同様JUnitを実行します。図7のように、起動したWebブラウザにテスト対象アプリケーションが表示されていることがわかります。テストの実施結果(成功・失敗)は動作確認時と同様、JUnitビューで確認してください。

テストの実施結果(成功・失敗)
図7:テストの実施結果(成功・失敗)
(画像をクリックすると別ウィンドウに拡大図を表示します)

   Javaでテストケースを作成してテストを実施する流れは以上のとおりです。あとは同様に試験項番1-2、1-3を作成してみてください。下記より筆者が作成したJavaのテストケース例がダウンロードできますので、参考にしてください。

Javaのテストケース例
test.selenium.it.lzh(8KB)

   次回は、Seleniumのテストコードをより手軽に作成できる便利ツール・SeleniumIDEについて解説します。

前のページ  1  2  3  4


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


INDEX
第6回:SeleniumRC−Javaによるテストの作成と実施
  テストの作成と実施(SeleniumRC−Java)
  SeleniumRCのjarファイルをプロジェクトにコピーする
  テストケースクラスを作成する
テストケースを記述する