即使测试失败,Gradle也会在测试阶段后执行任务

Yur*_*nko 26 java testing build gradle

我使用gradle作为我的建设者.运行我的所有测试后,我想执行其他任务.如果没有测试失败

test.doLast { /*my task*/ }
Run Code Online (Sandbox Code Playgroud)

工作良好.但是如果至少有一个测试失败,我的任务就不会执行.

即使我的某些测试失败,有没有办法执行我的任务.

Pet*_*ser 46

test.doLast不会添加新任务,但会向该任务添加另一个任务操作test.你可以做的是宣布一个终结者任务:

task foo(type: ...) { ... } // regular task declaration
test.finalizedBy(foo)
Run Code Online (Sandbox Code Playgroud)

这样,foo即使test失败也会运行,类似于Java finally块.

  • 遇到这不是 100% 准确的情况。 (2认同)