如何在使用Gradle Robolectric插件时忽略测试失败?

5

我正在使用 robolectric-gradle-plugin 进行 Robolectric 单元测试。我不想因为测试失败而使构建失败。在 DSL 中是否有一种类似于 Surefire Maven 插件中的 -DtestFailureIgnore=true 的方式或属性来忽略构建失败的测试?

我已经尝试过:

robolectric {
    ignoreFailures = true
}

并且

robolectric {
    ignoreFailure = true
}

在命令行中使用-DignoreFailure=true参数可以忽略测试失败。

我似乎找不到任何关于如何执行此操作的文档,或者在源代码中忽略测试的参考。


如果失败的测试集很小,您可以将它们标记为@Ignore以修复时间。 - Eugen Martynov
请点击此链接 https://dev59.com/uGIj5IYBdhLWcg3wilrB#25587012,这可能会对您有所帮助。 - Kumar Gouda
请点击此链接查看:https://stackoverflow.com/questions/20142486/dont-fail-the-gradle-build-if-a-test-is-failing-with-the-gradle-android-test-pl/25587012#25587012。希望对您有所帮助。 - undefined
3个回答

14
回答非常古老的问题,以便帮助那些偶然跑到这里的人。
testOptions {
    unitTests.all {
        setIgnoreFailures(true)
    }
}

欢迎来到 Stack Overflow。您能否添加对此文档的引用? - Dezza
@Dezza,这个属性没有任何文档记录。我已经查看了Gradle版本1.5.0的源代码,并找到了解决方案。属性_ignoreFailures_在Test.java中定义,可以通过TestOptions.javaUnitTestOptions.all()访问。 - Surge
1
安卓 {测试选项 { 单元测试.全部 { 设置忽略失败(true) } }} 在我找到设置位置后,非常感谢您的答案! - fky

1

继续构建的原因是,如果其他事情稍后针对APK运行,例如:集成测试、FindBugs、报告等,过早停止可能会阻止这些操作。 - Stephen M -on strike-

0

试试不带等号

robolectric {
    ignoreFailures true
}

jermaine1904,如何在新的Android Studio 1.1.0中使用它,例如与Robolectric 3.0一起使用。从最近的更新开始,我们不再使用插件,因此上面的代码无法工作? - Kate Geld
你是在Android Studio中运行测试还是通过控制台运行? - jermaine1904
在Android Studio中,tab终端(就像通常的控制台一样,据我所知)jermaine1904@ - Kate Geld

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接