backport

技術ネタと野球とときどき雑談

Android StudioでUnitTest

2017/04/25
development Android, Android Studio

アプリのテスト | Android Studioを読んでいまさらながらにお勉強中です。 今回はローカルユニットテストとインストルメント化されたテストって何が違うのかを整理してみました。

ローカルユニットテスト

  • module-name/src/test/java/
  • Android Studioが動いているPCの Java 仮想マシン(JVM)上で実行される
  • JUnit 4ベース
  • インストルメント化されたテストに比べて高速
  • 以下のどちらかを満たす必要がある
    • Androidフレームワークへの依存関係がない
    • Androidフレームワークへの依存関係をモックで代用できる

インストルメント化されたテスト

  • module-name/src/androidTest/java/
  • 実機もしくはエミュレータ上で実行される
  • Instrumentation APIを使ってContextなどにアクセスできる
  • ローカルユニットテストに比べて低速

Android Studioで新しくプロジェクトを作るとどちらも雛形が作られます。何が違うんだろうと思ってましたが、特性が違うんですね。

いわゆるビジネスロジック的なところはローカルユニットテストでテストし、Androidに強く依存するところやUIが絡むところはインストルメント化されたテストを使う、とい使い分けでしょうか。



コメント欄を表示する

おススメ

WEB+DB PRESS総集編[Vol.1~102] (WEB+DB PRESS plusシリーズ)

知識の幅を広げたい人は必携

【防水進化版 IPX6対応】SoundPEATS(サウンドピーツ) Q30 Bluetooth イヤホン 高音質 [メーカー1年保証] 低音重視 8時間連続再生 apt-Xコーデック採用 人間工学設計 マグネット搭載 CVC6.0ノイズキャンセリング マイク付き ハンズフリー通話 ブルートゥース イヤホン IP66防塵防水 ワイヤレス イヤホン Bluetooth ヘッドホン (ブラック)

ワイヤレスはやっぱり便利

Kindle Paperwhite Wi-Fi、ブラック

読みたいときに読みたい本を読めるのが嬉しい

超小型65W ノートPC汎用 ACアダプター FINsix ”Dart” (シルバー)超軽量85g 11種類の変換プラグで1000機種以上のノートPCに対応 USB5V出力付きでPCとスマホ同時充電 ※必ずご使用のPCとの互換性をご確認ください。『PSE認証済』

持ち運びに最適な小型軽量ACアダプタ