IntelliJIdea内でいくつかのAndroid JUnitテストを実行しようとすると問題が発生します。
私のプロジェクトはAndroid Gradleを使用したライブラリプロジェクトです。テストを実行すると、IntelliJは次のエラーで文句を言います:
Class not found: "com.domain.app.ClassTest"
ただし、ClassTest
はテストパッケージ内にあります。
これが私のbuild.gradleです:
apply plugin: 'Android-library'
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.Android.tools.build:gradle:0.10.+'
}
}
dependencies {
repositories {
mavenCentral()
maven {
url 'https://oss.sonatype.org/content/repositories/snapshots/'
}
}
compile 'com.Android.support:support-v4:19.1.+'
compile('junit:junit:4.11') {
exclude module: 'hamcrest-core'
}
}
Android {
compileSdkVersion 18
buildToolsVersion "19.0.3"
defaultConfig {
versionName "1.0"
versionCode 1
targetSdkVersion 18
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
Java.srcDirs = ['src/main/Java']
res.srcDirs = ['res']
}
androidTest {
Java.srcDirs = ['src/test/Java']
}
}
lintOptions {
abortOnError false
}
}
私のプロジェクト構造:
src
|_ main
|_ Java
|_ com.domain.app
|_ test
|_ Java
|_ com.domain.app
IntelliJ IDEA 13.1.1を使用しています。
ありがとう。
Project Structure -> Modules -> your_module -> Paths
に移動します。
'Output path
'の値を入力する必要がありますが、 'Test output path
'は入力しません。 「Output path
」にあるテキストをコピーし、「テスト出力パス」に貼り付けますが、最後の「build/intermediates/classes/debug
」を「build/test-classes
」に変更します。これは、gradle Androidテストプラグインが現在、コンパイルされたすべてのテスト出力(すべてのバリアント)を同じディレクトリにダンプするためです。これは、現在、バリアントが完全にサポートされていないことを意味します。
ソース 。
古い質問ですが、この問題に遭遇し、答えは次のパスにJUnitテストファイルを保存することであることがわかりました
module-name/ src/test/Java /
ディレクトリがまだ存在しない場合は、ディレクトリを作成して、そこにテストファイルを配置します。
ソース: https://developer.Android.com/training/testing/unit-testing/local-unit-tests