gpt4 book ai didi

android - 运行单元测试时没有可用资源

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:54:40 26 4
gpt4 key购买 nike

有一个 known bug在 Android Studio 中,应用程序的资源在测试类中不可用。

根据上述线程的解决方案是将以下行放入 build.gradle 中:

task copyTestResources(type: Copy) {
from "${projectDir}/src/test/resources"
into "${buildDir}/classes/test"
}
processTestResources.dependsOn copyTestResources

但是 gradle 说:

Error:(132, 0) Could not find property 'processTestResources' on project ':app'.

我到底要把线放在哪里

processTestResources.dependsOn copyTestResources

在我的 build.gradle 中?

编辑:

我的构建文件中还没有apply plugin: 'java'。问题是在我的应用程序模块的构建 gradle 中,我已经有了 apply plugin: 'android' 并尝试添加 java 插件导致

Error:The 'java' plugin has been applied, but it is not compatible with the Android plugins.

我尝试在顶层构建文件中放置 apply plugin: 'java'

task copyTestResources(type: Copy) {
from "${projectDir}/app/src/test/resources"
into "${buildDir}/classes/test"
}

请注意,我将模块目录添加到来自行。这构建良好,但需要访问资源的单元测试仍然不起作用。

最佳答案

抱歉,我不知道您使用的是 android 插件。你收到错误是因为 Android 插件 defines a different set of build tasks与 Java 插件相比。因此,您需要选择一个不同的构建任务来依赖于您的 copyTestResources 任务,例如:

apply plugin: 'android'

// (...) more build logic

task copyTestResources() {
from "${projectDir}/src/test/resources"
into "${buildDir}/classes/test"
}
check.dependsOn copyTestResources

此外,您的copyTestResources 任务可以更简单一些,如下所示:

task copyTestResources() {
from sourceSets.test.resources
into sourceSets.test.output.classesDir
}

关于android - 运行单元测试时没有可用资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27444978/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com