我有模拟数据,我想将其用于单元测试和仪器测试。为了避免重复,我创建了一个公共目录 testHelper 并将模拟数据放在那里。在 app/build.gradle 中我做了:
sourceSets {
androidTest {
java.srcDirs += 'testHelper'
}
test {
java.srcDirs += 'testHelper'
}
}
现在我可以从单元和 UI 测试导入模拟数据,但我也可以从主应用程序访问它们。我想避免这样做。我尝试了一些技巧,例如在上面添加 src/ 但没有什么区别。
基本上,我不希望我的主代码访问模拟数据
import AppMockData // ==> this shouldn't work. currently it does.
@Composable
fun HelloWorld(){}
您必须定义一个新的库模块(我们称之为“common”),您可以在其中定义您需要的所有模拟数据。 最后,您必须将此新模块作为依赖项链接到主应用程序的
build.gradle
文件中:
testImplementation project(':common')
androidTestImplementation project(':common')
这样,您的模拟数据将无法从您的应用代码访问。
希望这有帮助