SeleniumRC(Client Driver)での検証メソッドラッパー
SeleniumRCで開発言語を使ってテストを書く場合、検証するためにはJUnitのassert系メソッドとSeleniumの値取得メソッドを組み合わせなくてはいけなくて結構不便。
HTMLだと
assertTitle | MyMeibo 社員一覧 | |
verifyTextPresent | 社員登録 | |
verifyTable | emptable.0.0 | 山田 太郎 |
で済むけど、Javaだと
assertEquals("MyMeibo 社員一覧", selenium.getTitle()); assertTrue(selenium.isTextPresent("社員登録")); assertEquals("山田 太郎", selenium.getTable("emptable.0.0"));
って書かないといけない。長くなってメンドイし、分かりにくい。
ので、TestCaseの親クラスにラッパーメソッド作ってみた。
TestBase.java
// タイトルの検証ラッパーメソッド protected void verifyTitle(String expectedTitle) { assertEquals(expectedTitle, selenium.getTitle()); } // Table検証のラッパーメソッド protected void verifyTable(String tableLocator, String expectedStr) { assertEquals(expectedStr, selenium.getTable(tableLocator)); } // 文字列検証のラッパーメソッド protected void verifyTextPresent(String expectedStr) { assertTrue(selenium.isTextPresent(expectedStr)); }
そうすれば、TestCaseクラスの方ではHTMLの形式とほぼ同じで書ける〜♪
verifyTitle("MyMeibo 社員一覧"); verifyTextPresent("社員登録"); verifyTable("emptable.0.0", "山田 太郎");