【发布时间】:2018-11-04 22:56:37
【问题描述】:
我创建了一个androidLibrary 项目,其中包含一些Volley 请求类,
并想为其中一些请求编写单元测试。
我已经这样做了一百次了,经过几次尝试后它以某种方式起作用,但在第一次尝试时却没有。
如果我通过 androidStudio 试试这个
右键项目->新建->Android资源目录
您可以在 sourceSets “main”、“debug”和“release”之间进行选择。没有androidTest 选项。
如果我手动尝试,添加以下文件夹[moduleName]/src/androidTest/res/raw
并在里面放一个文件(比如说 image.jpg),我没有通过R.raw.image 获得参考。事实上,我的测试中根本无法访问R.raw。
我也尝试了 Build->rebuild project 或 Build->clean 但没有成功。
在其他项目中,我有一个 my.app.namespace.R 以及一个包含所有测试资源的 my.app.namespace.test.R。
所以我的问题是:
我需要做什么才能将res 文件夹添加到我的androidTest 中,该文件夹可通过R.[folder].[resId] 访问?
添加文件后我是否错过了关键步骤(即明确告诉 gradle)?
因为在我的build.gradle 中添加这样的标签似乎也没有任何区别:
android {
sourceSets {
androidTest {
java.srcDirs = ['src/androidTest/java']
res.srcDirs = ['src/androidTest/res']
}
}
}
如果我正在使用这很重要:
- Android Studio 3.1.2
- gradle-wrapper 4.4
- minSdkVersion 19
- targetSdkVersion 27
【问题讨论】:
标签: android unit-testing android-studio gradle android-resources