gpt4 book ai didi

android - 如何在 android 中使用 groovy 制作 integrationTest 源集?

转载 作者:行者123 更新时间:2023-11-29 19:19:11 25 4
gpt4 key购买 nike

我正在尝试将多个测试目录添加到我的 android 项目中。理想情况下,我想要一个联合测试目录和一个集成测试目录。我在 Spock 中进行所有联合测试,并且我想使用 Spock 或 robospock 进行所有集成测试。问题是,在我的 Gradle 构建文件中,当我尝试这样做时,我不断收到错误消息:

android {
sourceSets{
integrationTest {
groovy {
test.groovy.srcDir 'src/integrationTest/groovy'
}
}
}
}

我收到这个错误:

Error:(77, 0) Could not find method groovy() for arguments [build_c07qe1tzsdi2876irgi5e3c6i$_run_closure2$_closure9$_closure12$_closure13@7f835189] on source set integration test of type com.android.build.gradle.internal.api.DefaultAndroidSourceSet.

这在我使用 java 时有效:

android {
sourceSets{
integrationTest {
java {
test.java.srcDir 'src/integrationTest/java'
}
}
}
}

我也试过 https://github.com/groovy/groovy-android-gradle-plugin :

androidGroovy {
sourceSets {
integrationTest {
groovy {
srcDirs += 'src/integrationTest/groovy'
}
}
}
}

我正在使用 'com.android.tools.build:gradle:2.3.0',我已经成功地让 spock 测试在测试目录中运行,所以我的 groovy 配置是工作,我只是无法添加更多常规测试目录。

我在这一个上得到了与上面相同的错误。我也在 android 包装器之外尝试过它们,但无济于事。

我非常感谢至少能为我指明正确方向的任何人。我不确定还能尝试什么。

最佳答案

原来我使用的是旧版本的 android groovy 编译器。你需要这样做: apply plugin: 'groovyx.android' 这是 groovyx.grooid.groovy-android 的新名称,你需要将这个类路径添加到你的依赖。请注意,这可能应该放在您的根项目依赖项中,而不是类依赖项中,因为它需要在 apply 语句之前发生。

dependencies {
classpath 'org.codehaus.groovy:groovy-android-gradle-plugin:1.1.0'
}

然后你可以这样做:

android {
sourceSets {
test.java.srcDirs += 'src/integration-test/groovy'
test.java.srcDirs += 'src/unit-test/groovy'
}
}

我只花了两天时间就弄明白了。 :D

关于android - 如何在 android 中使用 groovy 制作 integrationTest 源集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42793532/

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