LT【2】Androidテストの効率化ノウハウ
- Androidアプリリリース作業の効率化(2)」神原健一氏(@korodroid)
個人でのAndroidアプリ開発での経験に基づく、アプリリリース作業の効率化について、神原氏は今回、テストを効率化するための方法や、自動テスト対象の絞り込み方法、ツールの選択基準を解説した。
神原健一氏 |
- - PR -
テストを効率化するためには、目的によって最適解は異なる。対象アプリを絞り込む基準として、サポートするAndroid OSのバージョン、アプリのバージョンアップ頻度、画面項目数、試験項目数、アプリの複雑性、自動化が可能であるか、などが挙げられた。
また、自動化ツールについては、JUnit、Robotium、Robletric、MonkeyRunner、Sciroccoの各ツールを1行で簡単に説明した。
現時点では自動化対象のアプリが絞り込まれた状態であり、自動化の範囲と量、適用ツールを検討中のことである。今後の実践とその報告の続報に期待したい。講演の詳細は、以下の資料で確認してほしい。
増加するAndroid端末にはリモートテストが有効か
スマートフォン人気の高まりと、ユーザーニーズを反映した各キャリアの戦略的な展開により市場に投入されるAndroid端末のバリエーションは増えるばかりである。そのため、Android端末でのシステムテストにおいて、端末カバレッジを高めるためのサービスとして各社がリモートテストサービスを提供し始めた。
本セッションでは、「三大リモートテストサービス 東海の大決闘!」と題して、リモートテストサービスを提供する3社が各サービス内容を紹介したうえで、参加者を巻き込みながら、リモートテストサービスについて議論する、パネルディスカッションが行われた。
左からNTTドコモ 金原正明氏、ソニックス 立花優人氏、カトマック 久納孝治氏 |
■ 3社のリモートテストサービス概要
まず、NTTドコモの金原正明氏より、NTTドコモでのリモートテストサービスについてサービス内容の説明があった。現在は、NTTドコモが提供している端末に限った、「dメニュー(dmenu)」に掲載されているコンテンツプロバイダにクローズ提供されているサービスだが、今後オープンなサービスとして提供することも検討中という。「NTTドコモのリモートテストサービスはカバーすべき端末カバレッジを増やす、広く浅くのシステムテストに向いている」と金原氏は述べた。
続いて、ソニックスの立花優人氏が、ソニックスのリモートテストサービスである「Scirocco Cloud」を紹介した。コンセプトは他社と同様であるが、自動テストスクリプトを作成して実施、結果を収集するサービスであり、さらにテストレコーダーによるキャプチャー&リプレイをこれからサポート予定だという。
Scirocco-Cloud via kwout
3社目のカトマックの久納孝治氏からは4月に正式サービスが開始された「リモート・スマホ・レンタル」の紹介があった。開始直後のサービスだが、それ故にフットワークが軽く、ユーザーニーズにも迅速かつ柔軟に答えていける態勢ができているとのことである。講演の詳細は、以下の資料で確認してほしい。
■ リモートテストサービスについて質問が続出
続いて、テスト部の東氏の司会の下、会場からの質問に3社が答える形でパネルディスカッションが始まった。
「他社のサービスと比較して、自社として強化すべき点は」という質問に対しては、「自社以外の端末のサポート、開発環境との親和性の高さ」(金原氏)、「3G受信品質」(立花氏)」など、各社の強化すべき、もしくはサポートが難しい点の回答があった。
カメラ撮影のリモートサポートに対する要望については、各社とも現状はサポートしていないが、「端末前のモニタ配置やAndroid APIを駆使した方法などでサポートが可能である」(久納氏)との回答があった。
検証端末自体を再利用する形になるリモートテストサービスについては、「端末データにテストデータが残る可能性や、別の利用者に利用中のテストデータが見られることがないのか」などの不安がある。その不安について会場から質問が挙がった。
それに対しては、「端末使用のための認証処理を用意している。端末にテストデータが残らない仕組みを組み込んでいる」(金原氏)、「LogCatで出力するログについてはある程度フィルタリングをかけている。工場出荷状態に戻すことは出来ないが、独自の方法でアプリのアンインストールをサポートしている」(立花氏)、「ファクトリーリセットによる、完全消去をサポートしている」(久納氏)など各社ごとの安全性確保方法の回答があった。
そのほか、「Android OSのマイナーバージョンのサポート」「提供端末の豊富 さ、利用順位」「サービスの開始時期、料金体系」「試用の可否」などについて会場より質問があった。
カバーすべき端末をすべて用意できないユーザーやベンダだけではなく、端末管理工数の多さ、テスト環境の維持コストの観点から、包括的なリモートテストサービスは魅力的なソリューションといえる。質問の多さからも、会場の関心度の高さがうかがえた。
Androidテストの課題は、まだまだ山積み
最後に、テスト部副部長の松木晋祐氏から閉会あいさつが行われた。Androidアプリ開発は、フィーチャーフォンやiOSプラットフォームと異なり、垂直統合からオープンイノベーションへ変化したことにより、自由は広がったが、その分、開発とテストについては、さらに複雑かつ困難な課題が山積みである。Androidにより垂直統合からオープンイノベーションへ変化したときに、携帯電話アプリ開発に置き去りにされたのは「分からなさ」であると松木氏は述べる。
日本Androidの会 テスト部副部長 松木晋祐氏 |
JaSST’12の基調講演で、Windows PhoneのテストアーキテクトであるB.J.ロリソン氏が述べた講演内容を引用し、ソフトウェアテストとは分からないこと、知らないことを「分かる」ための技術であり、あらかじめ知っていることを確認する「チェック」とは異なるものであると力説。松木氏は「これからもテスト部は上層、下層ともAndroidにおけるテスト技術をAndroidアプリ開発者たちと探求、実践、共有していきたい」と締めくくった。
第1回は下層、第2回は上層に焦点を当て、各領域で情報が満載だったAndroidテスト祭り。第3回はどのような内容になるのか、いまから楽しみである。
■ 関連リンク
■@IT関連記事
Androidアプリ開発テスト入門 日本Androidの会テスト部が、いままで培ってきたAndroidアプリ開発におけるのテストのノウハウを、実際のテストコード例とともに紹介していきます 「Smart & Social」フォーラム |
スマホを個人でも企業でも安全に使うための記事33選 スマホアプリの作り方【超まとめ】(セキュリティ編) 個人のプライバシー問題が報道で大きく扱われますが企業活用のセキュリティリスクも重要です。開発者・情シスも必見 「Smart & Social」フォーラム 2012/3/5 |
売れるスマホアプリを目指せ! テスト達人への道 安藤幸央のランダウン(56) iPhone/iPad・Androidアプリ開発にが重要な“使い心地”。しっかりとしたテストを経た高品質なアプリを作るためのポイントをまとめて紹介しよう 「Java Solution」フォーラム 2011/4/27 |
スマートフォンアプリデザインに役立つ基礎のまとめ! 一撃デザインの種明かし(14) iPhone/AndroidアプリのUIデザインに困っている方のために、アプリの事例や、作るときのコツ、画面サイズのデータ、参考リンクなどを紹介 |
イチから始める! Androidセキュリティ Androidに潜む危険はマルウェアだけはありません。実はアプリの作り方にも注意が必要です。クウと一緒に学びましょう 「Security&Trust」フォーラム
|
Androidセキュリティの今、これから 爆発的な勢いで普及し始めたAndroid端末は、大きなポテンシャルを秘める一方で、セキュリティという課題にも直面しています。この連載では Androidアプリ開発者や一般ユーザー、ビジネスユーザーと、あらゆるユーザーを対象に、Androidのセキュリティについて解説していきます 「Security&Trust」フォーラム
|
3/3 |
INDEX | ||
第2回Androidテスト祭りレポート Android開発の上層テストで失敗しないためのポイントとは |
||
Page1 今回は、上層にフォーカス セキュリティ設計は開発の初期段階から検討すべし |
||
Page2 「受け入れテストガイドライン」はユーザーに役立つのか Androidアプリ開発にはCIツール「Jenkins」が効果的 LT【1】Jenkins+コードレビュー「Geritt」がさらに効果的 |
||
Page3 LT【2】Androidテストの効率化ノウハウ 増加するAndroid端末にはリモートテストが有効か Androidテストの課題は、まだまだ山積み |
Smart&Social フォーラム トップページへ |
- 夏休みの自由研究にマイコンボードで「電子サイコロ」を作ったり、音楽プログラミングをしたりしてみよう (2017/7/24)
子ども向け電子工作&プログラミング用マイコンボード「chibi:bit」の基本的な使い方を紹介する企画。夏休みの自由研究に「電子サイコロ」を作ったり、音楽プログラミングをしたりしてみよう - 子ども向け電子工作&プログラミング用マイコンボード「chibi:bit」の基本的な使い方 (2017/7/20)
子ども向け電子工作&プログラミング用マイコンボード「chibi:bit」の基本的な使い方を紹介する。夏休みの子どもの自由研究などに役立てつつ、プログラミングを始めるきっかけにしてみてはいかがだろうか - 3DゲームのAIをiOSのSceneKitとGameplayKitで作る基本 (2017/7/10)
3Dゲーム用のフレームワークSceneKitを使った簡単なアプリ制作を通して、3Dゲーム用の人工知能(AI)について学ぶ - UnityアプリをWebGL、UWP、Android、iOS用としてビルドしてみた (2017/6/27)
アプリをWebで実行できるように書き出す方法やWindows上でUWP、Android、iOS用などにビルドする方法について解説する【Windows 10、Unity 5.6に対応】
|
|