android - 在项目 'testDebug' 中找不到名称为 ':module' 的任务

标签 android junit gradle robolectric

com.android.tools.build:gradle:1.3.0 开始,您可以遇到 在项目“:module”中找不到名称为“testDebug”的任务。

由于在构建环境的早期阶段无法使用 Robolectric 和 Java 正确测试库模块,因此创建了此解决方法:

afterEvaluate { project ->
    android.libraryVariants.each { variant ->
        println variant.name
        println tasks
        tasks.getByName("test${variant.name.capitalize()}") {
            dependsOn "assemble${variant.name.capitalize()}"
        }
    }
}

在 1.3.0 版本中,这被打破了。

最佳答案

他们已经将名称从 testDebug 更改为 testDebugUnitTest 因此上面的代码需要更改为:

afterEvaluate { project ->
    android.libraryVariants.each { variant ->
        println variant.name
        println tasks
        tasks.getByName("test${variant.name.capitalize()}UnitTest") {
            dependsOn "assemble${variant.name.capitalize()}"
        }
    }
}

关于android - 在项目 'testDebug' 中找不到名称为 ':module' 的任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31937815/

相关文章:

android - RecyclerView 显示为灰色框,其名称位于中心。对于已实现的音频可视化器 View 也是如此

java - Gradle FlywayMigrate 给出内存不足异常

java - Phonegap 3.3 无法添加平台

android - 在 Android 应用程序中获取连接的 HDMI 设备的 HDMI 版本

android - ActivityUnitTestCase 在使用 AndroidJUnitRunner 运行时抛出 RuntimeException

gradle - 如何从 gradle 中的 jar 中排除特定类

android - 如何在 ListView 中同时插入图像和文本

java - 开发在线多人游戏的方法?

Grails 模型统一测试

junit - 我们现在可以用 Mockito 2 模拟静态方法吗?