13
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Robolectric + Dagger2 + Mockito を使ってテストを書くハンズオン# Android_Testing_BC

Posted at
Page 1 of 11

自己紹介

  • @numa08
  • スマホアプリつくるようじょ

おしながき

  • Android の2つのテスト
  • Robolectric って何?
  • テストの無いアプリにテストを追加していこう

Android の2つのテスト

gradle のタスク名から名前を取りました

  • AndroidTest
    • 本物のデバイスやエミュレータで動くテスト
    • Androidフレームワークの機能をそのまま使える

Android の2つのテスト

  • Unit Test
    • JVM上で実行されるテスト
    • AndroidフレームワークのコードはJVMでは動かないのでモックが必要
    • AndroidTestより動作が速い

おしながき

  • Android の2つのテスト
  • Robolectric って何?
  • テストの無いアプリにテストを追加していこう

Robolectric って何?

  • Androidフレームワークをモックしてくれるライブラリ
  • JVM上でAndroidフレームワークのコードを動かすことができる
  • JVM上でAndroidフレームワークに依存するテストを書くことができる

Robolectric が無いとき :cry:

  • ContextActivityなどはJVM上では動作をしないので自分でテストコード内部で実装をする
    • MockitやPoerMock でモックは作れるがメンテナンスのコストはある
  • 巨大なフレームワークを全てモックし管理するのは現実的じゃない

Robolectric があるとき :smile:

  • テスト実行時にロードをするクラスをRobolectricが用意したモックに自動的に変更してくれる
  • 自分でモックを用意することも可能

おしながき

  • Android の2つのテスト
  • Robolectric って何?
  • テストの無いアプリにテストを追加していこう

サンプルアプリ

13
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?