Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
ANDROIDとテスト
宮田友美
自己紹介
宮田友美(みやたゆみ) @miyatay
日本アンドロイドの会
• 女子部
• テスト部
株式会社オープンストリーム所属
2
株式会社オープンストリーム
会社概要
• 東京都千代田区外神田6-14-3
神田KSビル
• 設立:2000年1月
• 資本金:2億6,260万円
• 代表取締役社長:佐藤浩二
• 従業員数:115名
• 平均年齢:31歳
• 関連会社
• 株...
どうしてANDROIDに興味を
持ったか?
それまでクローズドなイメージがあったモバイルに、オープンなプラットフォー
ムができた
• オープンさゆえに混沌とするだろうけど、そこが面白そう
• Javaで開発できる
• 開発環境が無料、野良アプリ...
仕事でANDROID
2010年5月ごろからAndroid案件に参画
営業支援システムを構築
• 現在、約400人の営業さんが利用中
• 端末はXperia(+Lynx?)
• 現在10名で開発中(サーバサイドも含む)
5
やっぱりテスト、大事ですよね
小さくリリース > フィードバック > アップデートの繰り返し
回帰テストが必須に・・・
毎回手でテストするのは厳しい><
テストを自動化したい!
6
ユニットテスト
ロジックのテスト
• Androidに依存していないテストケースもエミュレータ等にデプロ
わないとテストが実施できない
• android.jarを自分でビルドしてパスを通す?
UIのテスト
• Activityのテスト用にTe...
テストツール
Androidで使えるテストツール
• TraceView
• AndroidSDKについているプロファイリングツール
• android-mock
• EasyMockのラッパー
• Monkey
• Hudson
8
TRACEVIEW(1)
AndroidSDK付属のプロファイリングツール
• http://developer.android.com/guide/developing/tools/traceview
.html
• プロファイルしたい個所に...
TRACEVIEW(2)
TraceViewの起動画面
10
ANDROIDMOCK
android-mock
• http://code.google.com/p/android-mock/
• EasyMockのラッパーで、Androidで利用可能
• APIの呼び出しなど、Mockに置き換えて実行す...
MONKEYテスト
イベントをランダムに発生させて問題なく動くかどうか確認するテスト
• http://developer.android.com/guide/developing/tools/monkey.h
tml
adbで起動
• adb...
HUDSON
Hudsonとは
• CI(継続的インテグレーション)を提供
• 継続的にソフトウェアのビルドとテストを行う
• 他にCruiseControl、DamageControl等がある
• 外部で起動するジョブの実行監視
• cron...
テスト部紹介
Android Test and Evaluation Club (ATEC)
• https://sites.google.com/site/androidtestclub/activity
• 部員数:103名
• テスト部に...
ご清聴ありがとうございました
15
Upcoming SlideShare
Loading in …5
×

Androiとテスト

  • Login to see the comments

Androiとテスト

  1. 1. ANDROIDとテスト 宮田友美
  2. 2. 自己紹介 宮田友美(みやたゆみ) @miyatay 日本アンドロイドの会 • 女子部 • テスト部 株式会社オープンストリーム所属 2
  3. 3. 株式会社オープンストリーム 会社概要 • 東京都千代田区外神田6-14-3 神田KSビル • 設立:2000年1月 • 資本金:2億6,260万円 • 代表取締役社長:佐藤浩二 • 従業員数:115名 • 平均年齢:31歳 • 関連会社 • 株式会社豆蔵OSホールディ ングス(東証マザーズ:3756) • 株式会社ネクストスケープ • 株式会社フォスターネット • 株式会社モバイルコンビニ • 事業概要 – SOAとオープンアーキテクチャ(Java、 Webサービス、OSS等)によるシステムイ ンテグレーション事業を展開 • 主要取引先(50音順、敬称略) – AIGエジソン生命保険株式会社 – 鹿島建設株式会社 – 株式会社ぐるなび – コニカミノルタビジネステクノロジーズ株 式会社 – 株式会社サイバーエージェント – シャープ株式会社 – 株式会社セガ – ソニー株式会社 – ソフトバンクモバイル株式会社 – 株式会社ティージー情報ネットワーク – 高千穂交易株式会社 – 日立建機ビジネスフロンティア株式会社 – 株式会社ベネッセコーポレーション – 本田技研工業株式会社 3
  4. 4. どうしてANDROIDに興味を 持ったか? それまでクローズドなイメージがあったモバイルに、オープンなプラットフォー ムができた • オープンさゆえに混沌とするだろうけど、そこが面白そう • Javaで開発できる • 開発環境が無料、野良アプリもOKだから趣味でも楽しめそう • 携帯電話だけでなく、いろいろな家電などにも使えて面白そう • ※正直、仕事になるとは思ってませんでした。。。 4
  5. 5. 仕事でANDROID 2010年5月ごろからAndroid案件に参画 営業支援システムを構築 • 現在、約400人の営業さんが利用中 • 端末はXperia(+Lynx?) • 現在10名で開発中(サーバサイドも含む) 5
  6. 6. やっぱりテスト、大事ですよね 小さくリリース > フィードバック > アップデートの繰り返し 回帰テストが必須に・・・ 毎回手でテストするのは厳しい>< テストを自動化したい! 6
  7. 7. ユニットテスト ロジックのテスト • Androidに依存していないテストケースもエミュレータ等にデプロ わないとテストが実施できない • android.jarを自分でビルドしてパスを通す? UIのテスト • Activityのテスト用にTestCaseの拡張クラスがある • キーイベントを送信したり、UIのテストが可能 • ActivityInstrumentationTestCase2を利用した例 7
  8. 8. テストツール Androidで使えるテストツール • TraceView • AndroidSDKについているプロファイリングツール • android-mock • EasyMockのラッパー • Monkey • Hudson 8
  9. 9. TRACEVIEW(1) AndroidSDK付属のプロファイリングツール • http://developer.android.com/guide/developing/tools/traceview .html • プロファイルしたい個所に以下のコードを埋め込んで、アプリを実 行するだけ(※SDカードにファイルを作成するので、SDカードへ の書き込み権限が必要) Debug.startMethodTracing("atec"); …(プロファイル対象のソースコード) Debug.stopMethodTracing(); • 上記の記述では「/sdcard/atec.trace」というファイルが作成される • /sdcard/atec.traceを取得して、以下のコマンドを実行 • traceview [traceファイルの絶対パス] 9
  10. 10. TRACEVIEW(2) TraceViewの起動画面 10
  11. 11. ANDROIDMOCK android-mock • http://code.google.com/p/android-mock/ • EasyMockのラッパーで、Androidで利用可能 • APIの呼び出しなど、Mockに置き換えて実行することが可能 • 設定方法 • https://sites.google.com/site/androidtestclub/androidmock?pageUrlC hanged=androidmock 11
  12. 12. MONKEYテスト イベントをランダムに発生させて問題なく動くかどうか確認するテスト • http://developer.android.com/guide/developing/tools/monkey.h tml adbで起動 • adb shell monkey [options] <event-count> 実行例 • adb shell monkey -p jp.group.android.atec.twitter -v 500 12
  13. 13. HUDSON Hudsonとは • CI(継続的インテグレーション)を提供 • 継続的にソフトウェアのビルドとテストを行う • 他にCruiseControl、DamageControl等がある • 外部で起動するジョブの実行監視 • cron、procmailのジョブで、リモートマシンで動作するものも含む • http://hudson-ci.org/ HudsonでAndroid • Android Emulator Plugin • http://wiki.hudson- ci.org/display/HUDSON/Android+Emulator+Plugin 13
  14. 14. テスト部紹介 Android Test and Evaluation Club (ATEC) • https://sites.google.com/site/androidtestclub/activity • 部員数:103名 • テスト部に入部したい方はGoogleGroupに参加してください • http://groups.google.co.jp/group/android-test-club 活動方針 1. テスト対象のアプリとして、AndroidのTwitterクライアントをつくっ てみる。 2. Twitterクライアントに対して、テスト部で一通りのテスト (UT/IT/ST)を試行してみる。 3. テスト手法や結果、Androidにテーラリングされたプロセスを試 作/公開する。テストコードも公開する。 4. 本アクティビティのすべての決定/判断において”テスト”の方に 主眼を置く。開発はおまけ。 14
  15. 15. ご清聴ありがとうございました 15

×