类似的问题:
Sharing code between Android Instrumentation Tests and Unit Tests in Android Studio
我的设置如下:
>包含单元测试的src / test文件夹.这些可以是Java或Kotlin类
> src / androidTest包含检测测试.这些也可以是Java或Kotlin类
> src / sharedTest是一个文件夹,其中包含一系列在单元测试和检测测试之间共享的工具.
此共享在gradle中定义为:
sourceSets {
test.java.srcDirs += 'src/sharedTest/java'
androidTest.java.srcDirs += 'src/sharedTest/java'
}
这允许src / test或src / androidTest中的任何Java类访问utils.但不是Kotlin单元测试.我的假设是它们没有被添加到sourceSets中.
我的问题是:我该如何添加它们?我试过了:
sourceSets {
test.kotlin.srcDirs += 'src/sharedTest/java'
}
但这似乎不起作用.
最佳答案 默认设置是使Kotlin源集对Java编译器和IDE也可见:
android {
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
test.java.srcDirs += 'src/test/kotlin'
test.java.srcDirs += 'src/sharedTest/java'
androidTest.java.srcDirs += 'src/sharedTest/java'
}
}
您无需单独配置Kotlin源集.