📜  为什么 gradlew clean build 不检测测试 (1)

📅  最后修改于: 2023-12-03 15:21:36.092000             🧑  作者: Mango

为什么 gradlew clean build 不检测测试

当我们在执行 gradlew clean build 命令时,期望的结果是一次全面的构建,包括编译代码、运行单元测试等。但是,有时我们发现单元测试并没有被执行,这是为什么呢?

原因

默认情况下,gradlew clean build 命令只会编译代码和资源文件,并不会执行测试。这是出于构建效率和减少不必要的构建时间的考虑。如果每次执行 gradlew clean build 都执行所有的测试,将会耗费很长时间,特别是在大项目中。

如何执行测试

如果我们需要执行测试,可以使用 gradlew test 命令。该命令会编译代码和资源文件,并执行所有的测试,包括单元测试和集成测试。

自动执行测试

另外,我们可以将测试作为构建的一部分自动执行,而不需要手动执行 gradlew test 命令。我们可以在 build.gradle 配置文件中添加以下代码:

test {
    // 配置需要执行的测试
}

// 在构建过程中执行所有测试
check.dependsOn test

这将配置构建命令 gradlew check,该命令会执行所有的测试,包括单元测试和集成测试。

结论

gradlew clean build 命令并不会自动执行测试,这是为了提高构建的效率。如果需要执行测试,可以使用 gradlew test 命令或在 build.gradle 配置文件中添加自动执行测试的代码。