IntelliJ IDEA 2025.1 Help

开始使用 JUnit

在本教程中,您将学习如何为您的项目设置 JUnit,创建测试并运行它们以查看您的代码是否正确运行。 它仅包含让您入门的基本步骤。

如果您想了解更多关于 JUnit 的信息,请参考 官方文档。 要了解更多 IntelliJ IDEA 的测试功能,请参考本节中的其他主题。

您可以选择使用 Maven、Gradle 或 IntelliJ builder 来完成本教程。

创建项目

  1. 在主菜单中,前往 文件 | 新建 | 项目。

  2. 在 新建项目 向导中,从左侧列表中选择 Java。

  3. 指定项目名称,例如 junit-tutorial ,并选择 Maven 作为构建工具。

  4. 从 JDK 列表中选择您想在项目中使用的 JDK。

    如果 JDK 已安装在您的计算机上,但未在 IDE 中定义,请选择 添加 JDK 并指定 JDK 主目录的路径。

    如果您的计算机上没有必要的 JDK,请选择 下载JDK。

  5. 点击 创建。

添加依赖项

要让我们的项目使用 JUnit 功能,我们需要添加 JUnit 作为依赖项。

  1. 在项目根目录中打开 pom.xml 。

  2. 在 pom.xml 中,按下 Alt+Insert 并选择 依赖。

  3. 在打开的对话框中,在搜索字段中输入 org.junit.jupiter:junit-jupiter。

    在搜索结果中找到必要的依赖项,然后点击 添加。

  4. 在将依赖项添加到 pom.xml 后,按 Ctrl+Shift+O 或点击 重新导入所有 Maven 项目 中的 Maven 工具窗口以导入更改。

创建项目

  1. 在主菜单中,前往 文件 | 新建 | 项目。

  2. 在 新建项目 向导中,从左侧列表中选择 Java。

  3. 指定项目名称,例如 junit-tutorial ,并选择 Gradle 作为构建工具。

  4. 从 JDK 列表中选择您想在项目中使用的 JDK。

    如果 JDK 已安装在您的计算机上,但未在 IDE 中定义,请选择 添加 JDK 并指定 JDK 主目录的路径。

    如果您的计算机上没有必要的 JDK,请选择 下载JDK。

  5. 点击 创建。

添加依赖项

要让我们的项目使用 JUnit 功能,我们需要添加 JUnit 作为依赖项。

  1. 在项目根目录中打开 build.gradle 。

  2. 在 build.gradle 中,按下 Alt+Insert 并选择 添加 Maven 工件依赖。

  3. 在打开的工具窗口中,在搜索字段中键入 org.junit.jupiter:junit-jupiter。

    在搜索结果中找到必要的依赖项,然后点击 添加。

  4. 在将依赖项添加到 build.gradle 后,按 Ctrl+Shift+O 或点击 重新导入所有 Gradle 项目 中的 Gradle 工具窗口以导入更改。

创建项目

  1. 在主菜单中,前往 文件 | 新建 | 项目。

  2. 在 新建项目 向导中,从左侧列表中选择 Java。

  3. 指定项目名称,例如 junit-tutorial ,并选择 IntelliJ 作为构建工具。

  4. 从 JDK 列表中选择您想在项目中使用的 JDK。

    如果 JDK 已安装在您的计算机上,但未在 IDE 中定义,请选择 添加 JDK 并指定 JDK 主目录的路径。

    如果您的计算机上没有必要的 JDK,请选择 下载JDK。

  5. 点击 创建。

添加依赖项

要让我们的项目使用 JUnit 功能,我们需要添加 JUnit 作为依赖项。

  1. 在主菜单中,前往 文件 | 项目结构 (Ctrl+Alt+Shift+S)。

  2. 在 项目设置 下,选择 库 并点击 新建项目库按钮| 来自 Maven。

  3. 在打开的对话框中,指定必要的库 artifact,例如: org.junit.jupiter:junit-jupiter:5.9.1。

  4. 应用更改并关闭对话框。

    手动添加测试库到项目

编写应用程序代码

让我们添加一些我们将要测试的代码。

  1. 在 项目 工具窗口 Alt+1 中,进入 src/main/java 并创建一个名为 Calculator.java 的 Java 文件。

  2. 请将以下代码粘贴到文件中:

    import java.util.stream.DoubleStream; public class Calculator { static double add(double... operands) { return DoubleStream.of(operands) .sum(); } static double multiply(double... operands) { return DoubleStream.of(operands) .reduce(1, (a, b) -> a * b); } }

创建测试

现在让我们创建一个测试。 一个 test是一段代码,其功能是检查另一段代码是否正常运行。 为了进行检查,它调用测试方法并将结果与预定义的 预期结果进行比较。 预期结果可以是例如特定的返回值或异常。

  1. 将文本光标置于 Calculator 类声明的地方,然后按 Alt+Enter。 或者,右键点击它并选择 显示上下文操作。 从菜单中选择 创建测试。

    我们将要测试的类的代码
  2. 选择我们将要测试的两个类方法。

    创建测试对话框
  3. 编辑器会将您带到新创建的测试类。 请按如下方式修改 add() 测试:

    @Test @DisplayName("Add two numbers") void add() { assertEquals(4, Calculator.add(2, 2)); }

    这个简单的测试将检查我们的方法是否正确地将 2 和 2 相加。 @DisplayName 注解为测试指定了一个更方便且信息量更大的名称。

  4. 如果您希望在单个测试中添加多个断言并执行它们,而不管其中一些是否失败,该怎么办? 让我们为 multiply() 方法做这件事:

    @Test @DisplayName("Multiply two numbers") void multiply() { assertAll(() -> assertEquals(4, Calculator.multiply(2, 2)), () -> assertEquals(-4, Calculator.multiply(2, -2)), () -> assertEquals(4, Calculator.multiply(-2, -2)), () -> assertEquals(0, Calculator.multiply(1, 0))); }

    assertAll() 方法采用一系列 lambda 表达式形式的断言,并确保它们全部被检查。 这比采用多个单一断言更方便,因为您将始终看到细化的结果,而不是整个测试的结果。

运行测试并查看其结果

在我们设置好测试代码后,我们可以运行测试,找出被测试的方法是否正常工作。

  • 要运行单个测试,请点击 并选择 运行。

    点击装订区域的 Run 图标后出现的弹窗
  • 要运行测试类中的所有测试,请点击测试类声明旁边的 并选择 运行。

您可以在 运行 工具窗口中查看测试结果。

测试结果显示在 Run 工具窗口中
最后修改日期: 2025年 4月 24日