はじめに
Androidプロジェクトのテストは、テストの実行環境で以下のふたつに分けられます。
-
ローカルテスト
module-name/src/test/java/
にあります。
マシンのJVM上で実行されるため、実行時間・リソースがより少なく済みます。
Androidフレームワークを必要に応じてモックする必要があります。 -
インストラメント化テスト
module-name/src/androidTest/java/
にあります。
実機またはエミュレータ上で実行するため、再現性が高く実行時間・リソースがより多くかかります。
Instrumentation APIからContextなどの値を参照できます。
テストソースにファイルを追加する
これらのテストでコードを共有したり、任意のファイルを参照するには、gradleでテストソースを指定します。
例えば、ローカルテスト・インストラメント化テストでコードを共有したい場合、
module-name/src/sharedTest/java/{アプリのパッケージ名}
配下にファイルを作成し、アプリモジュールのbuild.gradleでテストソースを追加します。
android {
...
sourceSets {
androidTest
java.srcDirs += "src/sharedTest/java
}
test {
java.srcDirs += "src/sharedTest/java"
}
}
}
参考記事