1 回答
TA贡献1862条经验 获得超7个赞
我知道这不是最好的解决方案,但我确实通过执行以下操作设法使其发挥作用。
用注释你的测试类
@Category(my.package.WhateverClass) // I personally used Robolectric
将以下内容添加到您的根目录build.gradle
if (project.gradle.startParameter?.taskRequests?.args[0]?.remove("--robolectric")) {
subprojects
.all {
it.tasks
.withType(Test)
.configureEach {
println "Configuring task $it.name"
useJUnit {
includeCategories 'my.package.WhateverClass'
}
}
}
} else if (project.gradle.startParameter?.taskRequests?.args[0]?.remove("--unit")) {
subprojects
.all {
it.tasks
.withType(Test)
.configureEach {
println "Configuring task $it.name"
useJUnit {
excludeCategories 'my.package.WhateverClass'
}
}
}
}
./gradlew project:testDebug --robolectric 作为或 运行测试 ./gradlew project:testDebug --unit
如果您不添加任何内容,它将默认运行所有测试
如果您有更多时间,您可能可以创建一个任务,该任务从测试扩展并添加相同的配置。
注意:之所以.remove('--robolectric')存在,是因为 Gradle 会认为它是一个任务,因为它没有在任何任务中定义为标志
添加回答
举报