テストは人間にやらせろ!�~ テスト配信プラットフォームを使おう ~
Kouta Imanaka
2013/12/10�Android Test Casual Talks #1
自己紹介
今中幸太( @pside )
テストケース書くの大変!
“リソース(人、時間)が足りません”
“ユニットテストを導入してはいけません。”
引用:ユニットテスト改善ガイド | Developers.IO�http://dev.classmethod.jp/testing/unittesting/working-effectively-with-unit-testing/
それでも品質を保たなければならぬ
→ それでもアプリはFATAL Exceptionを吐く!どうすれば!!
人間にテストをさせる
人間にテストをさせるという発想
出来るだけ手間をかけずに�効果的・広範囲なテストをするには・・・?
テスト配信プラットフォームのススメ
種類
公式
国内
海外
下線部のサービスについて、実際に使ってみた。
Google Play
公式ストアの仕組みを使ってアプリのテスト配信を行う
Google Play
利点
欠点
結論:成熟したアプリで有用。成長段階のアプリだとフットワーク重い。�一般ユーザーを巻き込んだテストをするならベスト。
TestFlight
元祖ベータテスト配信プラットフォーム
クラッシュレポートの自動取得
TestFlight
利点
欠点
結論:プライベートなテスト環境を構築するには良い。�iOSアプリが先行している現場では導入がスムーズに進みます。
Deploygate
mixiが提供している国産テスト配信プラットフォーム
アップデート通知はプッシュ通知される
DeployGate SDKを組み込むことで�テストユーザの状況やクラッシュレポートを取得できる
リモートLogCatでクラッシュ時の状況を詳細に取得
DeployGate
利点
欠点
結論:配信者を限定する必要が無ければ一番のオススメ。�開発初期に組み込んでおけば色々捗りそう。リモートLogCatは夢のようだ。
Vessel (ex- Zubhium)
実はそれなりに古参(2012年2月-)のプラットフォーム
A/B テスト と 管理画面 ( https://www.vessel.io )
Vessel
利点
欠点
結論:A/Bテストのプラットフォームとして非常に良いのでは。�メールベースでのアプリ配信というのもシンプルで良い
WebAPIでCI
今回紹介したプラットフォームで�WebAPI経由でのアップロードに�対応しているもの
まとめ
おわり
SampleApp SourceCode: https://github.com/keima/androidtest-1