狠狠撸

狠狠撸Share a Scribd company logo
Yumi Miyata
アンドロイドは
テストの夢をみるか?



Do Android Dreams of Tests?
Android Bazaar and Conference 2011 summer
        日本Androidの会テスト部
自己紹介

宮田友美(みやたゆみ)
TwitterID:@miyatay

            日本Androidの会テスト部部長

              株式会社オープンストリーム所属
              – 業務でAndroidアプリを作ってます
                   – http://www.opst.co.jp/
テスト部とは?
2010年9月 発足
243名 部員
? 昨年から倍になりました!




http://www.flickr.com/photos/ilike/3707503212/
目标
ぶっちぎりのテスト力を
世界へ



http://www.flickr.com/photos/jaffathecake/2675559042
主な活动
月1回、部会開催
次回は、8/6 開催



http://www.flickr.com/photos/vokakvklim/4522919056
分科会(小チーム)



http://www.flickr.com/photos/jiheffe/3462940215
公式サイト翻訳
@mike_neck



               テストツール作成
                         (SQLite)
                                                     @ussy00



               テストツール検証
             (MonkeyRunnner,Robolectric,Robotium)
@myb1126                                            @bols_blue


                   受入れテスト
                  ガイドライン作成
  @dicea                                            @colis_dev
そして、
@nowsprinting                @7hepta             @sassy_watson




           Testter
                @mike_neck             @ussy00
Testter ?
? テストをしたくても、
  対象アプリがないと話にならない
? Androidのテストを検証するために必要な
  機能をすべて実装したアプリが欲しい




http://www.flickr.com/photos/jof/263652571
SQLiteのテストしたい
GPSを使った機能のテストしたい
では、作ってしまえ
@nowsprinting                @7hepta             @sassy_watson




           Testter
                @mike_neck             @ussy00
@nowsprinting                @7hepta             @sassy_watson




   Testterとそのテストを
    書いて得たノウハウ

                @mike_neck             @ussy00
問題
 テストプロジェクトのリソースが取得で
 きない




http://www.flickr.com/photos/proimos/4199675334/
原因
  #getTestContext()が@hide
  テストプロジェクトのリソースファイルを
  取ることができない




出典: http://www.flickr.com/photos/dcysurfer/2897532891
解
決
策   http://www.flickr.com/photos/farleyj/2768941171
リフレクション
Method method =
    getClass().getMethod("getTestContext");
Context context = (Context) method.invoke(this);
SecretResource resource =
  SecretResource.load(
   context.getResources(),
   R.raw.config
 );
問題
 Activityのロジックがテストしづらい




http://www.flickr.com/photos/proimos/4199675334/
原因
  Viewと分離できていないとテストが面倒




出典: http://www.flickr.com/photos/dcysurfer/2897532891
解
決
策   http://www.flickr.com/photos/farleyj/2768941171
Activityからロジックを分離
ロジックをUIと切り離してテス
トしやすい構成に
問題
 Viewに登録されているEventListener
 のgetterがないためテストが書けない
 ?じゃあリフレクションを使ってテストす
 るの?



http://www.flickr.com/photos/proimos/4199675334/
原因
  SDKの制約としてアクセスできないメソッド
  がある




出典: http://www.flickr.com/photos/dcysurfer/2897532891
解
決
策   http://www.flickr.com/photos/farleyj/2768941171
そもそもJUnitでテストをしない
今回の場合は結合テストでしかるべきイ
ベントが発生することをテストする
問題
 テストプロジェクトの構成をどうするか?




http://www.flickr.com/photos/proimos/4199675334/
原因
  開発時に記述するテストと結合テストやシステ
  ムテストで記述するテストを分離したい
  しかし、テストプロジェクトが分散すると管理が
  大変だし???




出典: http://www.flickr.com/photos/dcysurfer/2897532891
解
決
策   http://www.flickr.com/photos/farleyj/2768941171
テスト対象プロジェクト以下に
テストプロジェクトをつくる

     testter
               src
                lib
               res
               tests   ut-test
                       it-test
そして、
このような活動で得た
 ノウハウを公開する
  イベントを開催
      http://www.flickr.com/photos/neil_roger/3895501627
宣伝
Android
テスト祭り

                      2011年8月6日開催
http://www.flickr.com/photos/madeiraarchipelago/17549695/
详细

     https://sites.google.com/site/atecfes/program


http://www.flickr.com/photos/eelssej_/4948400648/
是非、
                                                       ご参加
                                                       ください!


http://www.flickr.com/photos/pinksherbet/2977652113/
さらに、宣伝
オープンストリームで一緒にAndroidアプ
リ開発してくれる方大募集

? Android案件の開発?提案等
? アーキテクト(もしくはアーキ候補)
興味がある方は以下までご連絡ください!


@miyatay
miyata.y@opst.co.jp

More Related Content

Similar to ABC (20)

JaSST'16 Tokyo モバイルセッション
JaSST'16 Tokyo モバイルセッションJaSST'16 Tokyo モバイルセッション
JaSST'16 Tokyo モバイルセッション
mirer
?
GroovyなAndroidテスト #atest_hack
GroovyなAndroidテスト #atest_hackGroovyなAndroidテスト #atest_hack
GroovyなAndroidテスト #atest_hack
Takahiro Yoshimura
?
Android 開発, 運用時に使いたいライブラリやサービスの紹介
Android 開発, 運用時に使いたいライブラリやサービスの紹介Android 開発, 運用時に使いたいライブラリやサービスの紹介
Android 開発, 運用時に使いたいライブラリやサービスの紹介
Kenichi Tatsuhama
?
テスト初心者础苍诲谤辞颈诲别谤のためのソフトウェアテスト入门
テスト初心者础苍诲谤辞颈诲别谤のためのソフトウェアテスト入门テスト初心者础苍诲谤辞颈诲别谤のためのソフトウェアテスト入门
テスト初心者础苍诲谤辞颈诲别谤のためのソフトウェアテスト入门
Satoshi Watanabe
?
はてなにおける Android アプリのソフトウェアテスト
はてなにおける Android アプリのソフトウェアテストはてなにおける Android アプリのソフトウェアテスト
はてなにおける Android アプリのソフトウェアテスト
Yu Nobuoka
?
Outsmarting Smartphone Apps 2
Outsmarting Smartphone Apps 2Outsmarting Smartphone Apps 2
Outsmarting Smartphone Apps 2
Takahiro Yoshimura
?
Android test tutorial
Android test tutorialAndroid test tutorial
Android test tutorial
Kazuaki Ueda
?
Sharoid Service Menu
Sharoid Service MenuSharoid Service Menu
Sharoid Service Menu
sharoid
?
Androidテスティング実践 基礎編
Androidテスティング実践 基礎編Androidテスティング実践 基礎編
Androidテスティング実践 基礎編
株式会社 NTTテクノクロス
?
smartphone test (know how & tools)
smartphone test (know how & tools)smartphone test (know how & tools)
smartphone test (know how & tools)
Yukio Andoh
?
ヤフオク!の快适なカスタマー体験を支えるモバイルアプリのライブアップデート技术
ヤフオク!の快适なカスタマー体験を支えるモバイルアプリのライブアップデート技术ヤフオク!の快适なカスタマー体験を支えるモバイルアプリのライブアップデート技术
ヤフオク!の快适なカスタマー体験を支えるモバイルアプリのライブアップデート技术
驰补丑辞辞!デベロッパーネットワーク
?
快適?簡単?安心なアプリE2Eテストの実行環境 #stac2017
快適?簡単?安心なアプリE2Eテストの実行環境 #stac2017快適?簡単?安心なアプリE2Eテストの実行環境 #stac2017
快適?簡単?安心なアプリE2Eテストの実行環境 #stac2017
驰补丑辞辞!デベロッパーネットワーク
?
はじめてのテスト技法
はじめてのテスト技法はじめてのテスト技法
はじめてのテスト技法
Tatsuya Saito
?
アプリの不具合を少なくするために
アプリの不具合を少なくするためにアプリの不具合を少なくするために
アプリの不具合を少なくするために
Kenichi Tatsuhama
?
【罢别肠丑产耻锄锄】迟颈迟补苍颈耻尘资料
【罢别肠丑产耻锄锄】迟颈迟补苍颈耻尘资料【罢别肠丑产耻锄锄】迟颈迟补苍颈耻尘资料
【罢别肠丑产耻锄锄】迟颈迟补苍颈耻尘资料
洋平 前田
?
闯补驳神戸3(共有用)
闯补驳神戸3(共有用)闯补驳神戸3(共有用)
闯补驳神戸3(共有用)
takagig
?
Unit test in android
Unit test in androidUnit test in android
Unit test in android
Tatsuya Maki
?
Outsmarting Smartphone Apps 2
Outsmarting Smartphone Apps 2Outsmarting Smartphone Apps 2
Outsmarting Smartphone Apps 2
Takahiro Yoshimura
?
ああ、素晴らしきTDD ~アプリとエンジニアの心に安寧を~
ああ、素晴らしきTDD  ~アプリとエンジニアの心に安寧を~ああ、素晴らしきTDD  ~アプリとエンジニアの心に安寧を~
ああ、素晴らしきTDD ~アプリとエンジニアの心に安寧を~
Saiki Iijima
?
アンドロイダー的に贬罢惭尝5でどこまでできそうか
アンドロイダー的に贬罢惭尝5でどこまでできそうかアンドロイダー的に贬罢惭尝5でどこまでできそうか
アンドロイダー的に贬罢惭尝5でどこまでできそうか
Takao Sumitomo
?
JaSST'16 Tokyo モバイルセッション
JaSST'16 Tokyo モバイルセッションJaSST'16 Tokyo モバイルセッション
JaSST'16 Tokyo モバイルセッション
mirer
?
GroovyなAndroidテスト #atest_hack
GroovyなAndroidテスト #atest_hackGroovyなAndroidテスト #atest_hack
GroovyなAndroidテスト #atest_hack
Takahiro Yoshimura
?
Android 開発, 運用時に使いたいライブラリやサービスの紹介
Android 開発, 運用時に使いたいライブラリやサービスの紹介Android 開発, 運用時に使いたいライブラリやサービスの紹介
Android 開発, 運用時に使いたいライブラリやサービスの紹介
Kenichi Tatsuhama
?
テスト初心者础苍诲谤辞颈诲别谤のためのソフトウェアテスト入门
テスト初心者础苍诲谤辞颈诲别谤のためのソフトウェアテスト入门テスト初心者础苍诲谤辞颈诲别谤のためのソフトウェアテスト入门
テスト初心者础苍诲谤辞颈诲别谤のためのソフトウェアテスト入门
Satoshi Watanabe
?
はてなにおける Android アプリのソフトウェアテスト
はてなにおける Android アプリのソフトウェアテストはてなにおける Android アプリのソフトウェアテスト
はてなにおける Android アプリのソフトウェアテスト
Yu Nobuoka
?
Android test tutorial
Android test tutorialAndroid test tutorial
Android test tutorial
Kazuaki Ueda
?
Sharoid Service Menu
Sharoid Service MenuSharoid Service Menu
Sharoid Service Menu
sharoid
?
smartphone test (know how & tools)
smartphone test (know how & tools)smartphone test (know how & tools)
smartphone test (know how & tools)
Yukio Andoh
?
ヤフオク!の快适なカスタマー体験を支えるモバイルアプリのライブアップデート技术
ヤフオク!の快适なカスタマー体験を支えるモバイルアプリのライブアップデート技术ヤフオク!の快适なカスタマー体験を支えるモバイルアプリのライブアップデート技术
ヤフオク!の快适なカスタマー体験を支えるモバイルアプリのライブアップデート技术
驰补丑辞辞!デベロッパーネットワーク
?
はじめてのテスト技法
はじめてのテスト技法はじめてのテスト技法
はじめてのテスト技法
Tatsuya Saito
?
アプリの不具合を少なくするために
アプリの不具合を少なくするためにアプリの不具合を少なくするために
アプリの不具合を少なくするために
Kenichi Tatsuhama
?
【罢别肠丑产耻锄锄】迟颈迟补苍颈耻尘资料
【罢别肠丑产耻锄锄】迟颈迟补苍颈耻尘资料【罢别肠丑产耻锄锄】迟颈迟补苍颈耻尘资料
【罢别肠丑产耻锄锄】迟颈迟补苍颈耻尘资料
洋平 前田
?
闯补驳神戸3(共有用)
闯补驳神戸3(共有用)闯补驳神戸3(共有用)
闯补驳神戸3(共有用)
takagig
?
ああ、素晴らしきTDD ~アプリとエンジニアの心に安寧を~
ああ、素晴らしきTDD  ~アプリとエンジニアの心に安寧を~ああ、素晴らしきTDD  ~アプリとエンジニアの心に安寧を~
ああ、素晴らしきTDD ~アプリとエンジニアの心に安寧を~
Saiki Iijima
?
アンドロイダー的に贬罢惭尝5でどこまでできそうか
アンドロイダー的に贬罢惭尝5でどこまでできそうかアンドロイダー的に贬罢惭尝5でどこまでできそうか
アンドロイダー的に贬罢惭尝5でどこまでできそうか
Takao Sumitomo
?

ABC