ハイブリッドアプリのUIテスト(Robotium編)

ハイブリッドアプリのUIテストを実行する方法についてのエントリです。

今回利用したテスト対象アプリ、UIテストフレームワークは、以下のとおりです。
・対象アプリ:XTranslator(ハイブリッドアプリ)のAndroid版
・UIテストフレームワーク:Robotium 4.3.1

Robotiumは3.x系の時は、サポートされていなかったハイブリッドアプリのテストが4.xから実行できるようになっていたようです。自分が公開しているハイブリッドアプリに適用したので、関連情報を紹介します。
Robotiumの使い方などについては、公式サイトなどを別途参照ください。

■テスト対象アプリ(XTranslator)
入力したテキストを翻訳するというシンプルなアプリです。
Android、iOS、Tizen、FirefoxOSに対応しています。
詳細は、こちらのエントリをご参照ください。

XTranslator

 

■テストコード(Robotium利用)

/**
* テキスト入力後、翻訳ボタンを押下し正しい翻訳結果が表示されることを確認する。
* (英語→ドイツ語の翻訳で、”bookstore”が”Buchhandlung”に翻訳されること)
*/

@Smoke
public void test_正常に翻訳できることを確認する() throws Exception {

String TEXT_INPUT = “bookstore”;
String TEXT_OUTPUT = “Buchhandlung”; 

// GUI部品の表示チェック
assertTrue(solo.waitForWebElement(By.id(“inputText”)));
assertTrue(solo.waitForWebElement(By.id(“buttonTranslate”)));

// 入力エリアへのテキスト入力
solo.enterTextInWebElement(By.id(“inputText”), TEXT_INPUT);
solo.sleep(3000);
assertEquals(TEXT_INPUT, solo.getWebElement(By.id(“inputText”), 0).getText());

// 翻訳ボタンの押下
solo.clickOnWebElement(By.id(“buttonTranslate”));
solo.sleep(5000);

// 出力エリアの内容チェック
assertEquals(TEXT_OUTPUT, solo.getWebElement(By.id(“outputText”), 0).getText());

}

■テスト動画

http://youtu.be/bdFTFDl54jw

■Robotiumでハイブリッドアプリをテストする場合の補足
Robotiumの根幹をなすSoloクラスの中で、○○Web○○というメソッドが
ハイブリッドアプリのテストの際に利用できると考えれば良さそうです。
HTMLのGUI部品をID指定で選択し、クリックさせたり、テキストを入力することができます。
ハイブリッドアプリでテストしたいアクションの全てをRobotiumがカバーしているかは分かっていませんが、参考になればと思います。

このエントリーをはてなブックマークに追加
はてなブックマーク - ハイブリッドアプリのUIテスト(Robotium編)
Share on Facebook
Post to Google Buzz
Bookmark this on Yahoo Bookmark
Bookmark this on Livedoor Clip
[`tweetmeme` not found]

korodroid の紹介

Android大好きな開発者です。 Twitterをやっています(@korodroid)。お気軽にフォローお願いします。 セカイフォン/SekaiPhone(MWC 2015/CES 2015/IFA 2013/MWC 2013 Exhibition、Droidcon Stockholm 2014, Spain 2014, Amsterdam 2013、Paris 2013、London 2012、ABC 2014 Winter Speaker、GDD 2011 Tokyo基調講演デモ、Googleタブレットアプリコンテスト5位入賞、i*deal Competition 2010 finalist) Androidプログラミング入門改訂2版(共著)、Android APIプログラミングリファレンス(共著)、Androidテスト技法(共著)、iPhone&Android通知機能プログラミング徹底ガイド(共著)著者。ニッポン放送のapp10.jpに出演させていただきました。 神原 健一
カテゴリー: Android, Robotium パーマリンク