Contents

Gradle测试和检查之间的区别

1. 简介

Gradle 已成为近年来非常流行的依赖管理工具,尤其是在 Java 开发人员中。它很容易学习,而且因为它是用 Groovy 编写的,所以它的扩展性也很强。

在本快速教程中,我们将了解 Gradletestcheck任务之间的区别**。我们将准确确定每个人的作用以及何时使用它们是有意义的。

2. Gradle概述

Gradle 是一个依赖管理工具。它提供了用于定义软件项目中的依赖关系的强大功能,以及用于管理从测试到部署的整个构建生命周期的各种功能。

为了完成它的工作,Gradle 使用任务。任务本质上是完成目标的一组离散步骤。一些例子是:

  • 编译源代码
  • 将源代码打包成一个模块
  • 将模块部署到远程系统

虽然 Gradle 是可扩展的并且允许我们定义我们想要的任何任务,但 Java 开发人员想要的最常见任务默认情况下是可用的。其中两个任务名为testcheck

虽然它们本质上相似,但在管理软件项目时,**它们各自的角色略有不同。**在接下来的部分中,我们将更深入地研究每一个。

3. 何时使用 Gradle 测试

要运行test任务,我们只需运行:

gradle test

test任务执行项目中的所有单元测试test任务有很多控制其行为的属性 ,我们不会在这里全部介绍。

默认情况下,test任务会自动检测项目中的所有单元测试 ,编译它们,然后执行它们。最后,它会生成一份报告,说明哪些测试已通过和失败。

test任务是一个伟大的通用任务,所有开发人员在使用 Gradle 时都应该熟悉它。通常,它应该由每个开发人员在将任何新代码提交到主分支之前执行。

但作为额外的保护层,在任何正式的软件构建过程中自动执行它也是很常见的。例如,在编译源代码之后但在组装最终工件之前,将test任务用作任何自动化软件构建的一部分是很常见的。

4. 何时使用 Gradle Check

要运行check任务,我们只需运行:

gradle check

test不同,check任务被称为“生命周期”任务。这意味着,它本身不做任何事情。相反,它执行一项或多项其他任务。

默认情况下,check任务只执行test任务。这意味着,在没有任何其他插件的情况下,这两个任务的行为方式完全相同并生成相同的输出。

check之所以重要,是因为它可以将一个或多个验证任务聚合在一起。这使我们能够将多个任务合并到一个步骤中,而不必一个一个地执行它们。

Gradle 生态系统包含许多插件,例如checkstyle 插件,它们为check任务提供附加功能。

一般来说,任何做源代码验证工作的任务都应该附加到检查任务上。源代码样式强制执行、库漏洞扫描和集成测试等都是包含在检查任务中的好候选。