私は5つのソースフォルダにマップされています。いくつかの共通コードがメインフォルダに書き込まれています。bフォルダにはユニットテストを書いた余分な豆があります。メインフォルダー内のすべての単体テストと同様に単体テストが実行され、Bアプリ用に書かれた特定の単体テストが実行されます。主なフレーバーと特定のフレーバーの実行ユニットテスト
1. Bアプリのフォルダ固有ユニットテストをどこに配置する必要がありますか?私は、フォルダのテストを作成し、そのフォルダにそれらのテストを置き、Bアプリのソースセットに
unitTest { java.srcDir file('src/b/test') }
を追加することが、これは、私はユニットテストのためのマッピングを置くべき 2.Howが動作していないではない揃えていますこれらはアンドロイドテストではありません、私はすでにthisとthisを疲れましたが、これらはAndroidテスト用ではないようです。
productFlavors {
staging {
applicationIdSuffix = ".test"
resValue "string", "app_name", "A Test"
//other keys
}
prod {
resValue "string", "app_name", "A"
//other keys
}
dev {
applicationIdSuffix = ".dev"
resValue "string", "app_name", "A Dev"
//other keys
}
BStaging {
applicationIdSuffix = ".b.test"
resValue "string", "app_name", "B Test"
//other keys
}
BProd {
applicationIdSuffix = ".b"
resValue "string", "app_name", "B"
//other keys
}
}
sourceSets {
prod {
java.srcDirs = ['src/a/java']
res.srcDirs = ['src/a/res']
resources.srcDirs = ['src/a/java']
manifest.srcFile 'src/a/AndroidManifest.xml'
}
dev {
java.srcDirs = ['src/a/java']
res.srcDirs = ['src/a/res']
resources.srcDirs = ['src/a/java']
manifest.srcFile 'src/a/AndroidManifest.xml'
}
staging {
java.srcDirs = ['src/a/java']
res.srcDirs = ['src/a/res']
resources.srcDirs = ['src/a/java']
manifest.srcFile 'src/a/AndroidManifest.xml'
}
BStaging {
java.srcDirs = ['src/b/java']
res.srcDirs = ['src/b/res']
resources.srcDirs = ['src/b/java']
manifest.srcFile 'src/b/AndroidManifest.xml'
}
BProd {
java.srcDirs = ['src/b/java']
res.srcDirs = ['src/b/res']
resources.srcDirs = ['src/b/java']
manifest.srcFile 'src/b/AndroidManifest.xml'
}
}
ちょっと男私は、ソースセットを使用していないが、私は、このコマンドパターンを使用して味ベースのテストを実行することができました。 (引用符は不要です) "./gradlew test UnitTest" –