Gradle 中测试和检查任务之间的区别
Difference between test and check tasks in Gradle
我的build.gradle
如下:
group 'groupName'
version 'version'
apply plugin: 'java'
apply plugin: 'idea'
sourceCompatibility = 1.8
repositories {
. . .
}
dependencies {
. . .
testCompile group: 'junit', name: 'junit', version: '4.12'
}
在Gradle做的时候./gradlew tasks
我收到
Verification tasks
------------------
check - Runs all checks.
test - Runs the unit tests.
这两个任务有什么区别? ./gradlew check
的输出与 ./gradlew test
.
相同
andrewgazelka $ ./gradlew check
> Task :test FAILED
MathTest > testX FAILED
java.lang.AssertionError at MathTest.java:40
MathTest > testY FAILED
java.lang.AssertionError at MathTest.java:55
SimulatorTest > testZ FAILED
java.lang.IllegalArgumentException at SimulatorTest.java:71
30 tests completed, 3 failed
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':test'.
> There were failing tests. See the report at: file:///Users/andrewgazelka/IdeaProjects/RobotCode2018/build/reports/tests/test/index.html
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 2s
3 actionable tasks: 3 executed
andrewgazelka $ ./gradlew test
> Task :test FAILED
MathTest > testX FAILED
java.lang.AssertionError at MathTest.java:40
MathTest > testY FAILED
java.lang.AssertionError at MathTest.java:55
SimulatorTest > testZ FAILED
java.lang.IllegalArgumentException at SimulatorTest.java:71
30 tests completed, 3 failed
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':test'.
> There were failing tests. See the report at: file:///Users/andrewgazelka/IdeaProjects/RobotCode2018/build/reports/tests/test/index.html
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 1s
3 actionable tasks: 1 executed, 2 up-to-date
据我了解,./gradle test
⊆ ./gradle check
。这是正确的吗?
Gradle check
任务依赖于 test
任务,这意味着 test
在 check
是 运行 之前执行。 documentation 声明检查执行项目中的所有验证任务,包括 test
以及添加到项目的任务插件:
例如,如果您将 checkstyle 插件添加到您的项目中,您可以 运行 它的任务 checkstyleMain
和 checkstyleTest
单独或使用 check
。在这种情况下,任务 test
、checkstyleMain
和 checkstyleTest
将是 运行。
而 test
总是只执行您的单元测试。
我的build.gradle
如下:
group 'groupName'
version 'version'
apply plugin: 'java'
apply plugin: 'idea'
sourceCompatibility = 1.8
repositories {
. . .
}
dependencies {
. . .
testCompile group: 'junit', name: 'junit', version: '4.12'
}
在Gradle做的时候./gradlew tasks
我收到
Verification tasks
------------------
check - Runs all checks.
test - Runs the unit tests.
这两个任务有什么区别? ./gradlew check
的输出与 ./gradlew test
.
andrewgazelka $ ./gradlew check
> Task :test FAILED
MathTest > testX FAILED
java.lang.AssertionError at MathTest.java:40
MathTest > testY FAILED
java.lang.AssertionError at MathTest.java:55
SimulatorTest > testZ FAILED
java.lang.IllegalArgumentException at SimulatorTest.java:71
30 tests completed, 3 failed
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':test'.
> There were failing tests. See the report at: file:///Users/andrewgazelka/IdeaProjects/RobotCode2018/build/reports/tests/test/index.html
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 2s
3 actionable tasks: 3 executed
andrewgazelka $ ./gradlew test
> Task :test FAILED
MathTest > testX FAILED
java.lang.AssertionError at MathTest.java:40
MathTest > testY FAILED
java.lang.AssertionError at MathTest.java:55
SimulatorTest > testZ FAILED
java.lang.IllegalArgumentException at SimulatorTest.java:71
30 tests completed, 3 failed
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':test'.
> There were failing tests. See the report at: file:///Users/andrewgazelka/IdeaProjects/RobotCode2018/build/reports/tests/test/index.html
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 1s
3 actionable tasks: 1 executed, 2 up-to-date
据我了解,./gradle test
⊆ ./gradle check
。这是正确的吗?
Gradle check
任务依赖于 test
任务,这意味着 test
在 check
是 运行 之前执行。 documentation 声明检查执行项目中的所有验证任务,包括 test
以及添加到项目的任务插件:
例如,如果您将 checkstyle 插件添加到您的项目中,您可以 运行 它的任务 checkstyleMain
和 checkstyleTest
单独或使用 check
。在这种情况下,任务 test
、checkstyleMain
和 checkstyleTest
将是 运行。
而 test
总是只执行您的单元测试。