# 运行/调试配置：JUnit

> For the complete documentation index, see [llms.txt](https://www.jetbrains.com/zh-cn/help/idea/llms.txt).

JUnit 运行/调试配置定义了基于 JUnit 测试框架的单元测试的运行方式。

Procedure: 创建新的 JUnit 运行配置

1. 在主菜单中，前往  `运行 | 编辑配置` 。

2. 在   运行/调试配置   对话框中，点击工具栏上的 ![](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.add.svg)，或按 `Alt+Insert` (Windows), `⌘ N` (macOS), `⌃ N` (IntelliJ IDEA Classic (macOS)), `⌘ N` (macOS System Shortcuts), `Alt+Insert` (XWin), `Alt+Insert` (GNOME), `Alt+Insert` (KDE), `Alt+Insert` (Emacs), `Alt+Insert` (Sublime Text), `⌘ N` (Sublime Text (macOS)), `Alt+Insert` (Visual Studio), `⌘ ⌃ N` (Visual Studio (macOS)), `Alt+Insert` (NetBeans), `Alt+Insert` (Eclipse), `⌘ N` (Eclipse (macOS))。

该列表显示运行/调试配置模板。 选择   JUnit  。

在右侧，您会看到配置选项。

![运行/调试配置：JUnit](https://resources.jetbrains.com/help/img/idea/2026.3/run_config_junit_general.png)

> **Tip:**
> 您可以使用 `Ctrl+Space` (Windows), `⌃ Space` (macOS), `⌃ Space` (IntelliJ IDEA Classic (macOS)), `⌃ Space` (macOS System Shortcuts), `Ctrl+Space` (XWin), `Ctrl+Space` (GNOME), `Ctrl+Space` (KDE), `Alt+/` (Emacs), `Ctrl+Space` (Sublime Text), `⌃ Space` (Sublime Text (macOS)), `Ctrl+Space` (Visual Studio), `⌃ Space` (Visual Studio (macOS)), `Ctrl+Space` (NetBeans), `Ctrl+Space` (Eclipse), `⌃ Space` (Eclipse (macOS)) 让 IntelliJ IDEA 在此对话框中 [帮助您填写字段](auto-completing-code.html)。

|    名称    |  在编辑或运行时，指定运行配置的名称以便快速识别。  |
|    运行    |  选择您要运行配置的目标环境。 除了在本地运行之外，您还可以选择通过 SSH 在远程机器上或在 Docker 容器中运行您的应用程序。 有关更多信息，请参见 [运行目标](run-targets.html)。  |
|    存储为项目文件    |     将运行配置设置保存到文件中，以便与其他团队成员共享。 默认位置是  `.idea/runConfigurations` 。 但是，如果您不想共享  `.idea` 目录，您可以将配置保存到项目内的任何其他目录。       默认情况下，此选项是禁用的，IntelliJ IDEA 将运行配置设置存储在  `.idea/workspace.xml` 。     |

## 必填选项

|  条目  |  描述  |
| --- | --- |
|    JRE    |  指定 IntelliJ IDEA 应该使用的运行时环境来运行应用程序。 默认情况下，IntelliJ IDEA 使用模块依赖项中最新可用的 JDK。  |
|    使用模块的类路径    |  选择应使用其类路径来运行应用程序的模块。  |
|    测试种类    |     从此列表中选择您的测试范围，并根据您的选择填写字段：        * 软件包中的所有 ：运行包中的所有单元测试。 请在右侧字段中指定包。    * 目录中的所有 ：运行目录中的所有单元测试。 在右侧字段中指定目录。    * 模式 ：运行一组测试类或测试类中的特定方法。 此集合可能包含位于相同或不同目录、包或模块中的类。 声明必须用 `\|\|` 分隔。 此字段中的每个类都必须以其完全限定名称表示： * 包括包名和类名 * 使用 `,` 作为方法的分隔符 * 使用 `$` 作为内部类的分隔符 您可以手动键入类名，或点击右侧的 !["添加"按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app-client.expui.general.open.svg)（或按 `Shift+Enter` (Windows), `⇧ ⏎` (macOS), `⇧ ⏎` (IntelliJ IDEA Classic (macOS)), `⇧ ⏎` (macOS System Shortcuts), `Shift+Enter` (XWin), `Shift+Enter` (GNOME), `Shift+Enter` (KDE), `Shift+Enter` (Emacs), `Ctrl+Enter` (Sublime Text), `⌘ ⏎` (Sublime Text (macOS)), `Shift+Enter` (Visual Studio), `⇧ ⏎` (Visual Studio (macOS)), `Shift+Enter` (NetBeans), `Shift+Enter` (Eclipse), `⇧ ⏎` (Eclipse (macOS))），并在打开的对话框中搜索要添加的类。 示例： `packageName.ClassName$InnerClassName,methodName` 还可以使用 [正则表达式](regular-expressions.html) 指定所需的类。 例如，如果您想排除名称中包含 `IT` 的所有集成测试，请输入 `^(?!.*IT.*).*$` 。 可以创建套件测试，即由多个将一起运行的测试类组成的组合。 创建套件测试类，请点击 ![“展开”按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.general.expandComponent.svg)并键入您希望作为套件运行的测试类。 因此，将使用 `@Suite` 注释创建一个新类。    * 类 ：运行类中的所有单元测试。 请在右侧字段中指定类的完全限定名称。    * 方法 ：运行单个测试方法。 请在右侧字段中指定具有此方法的类的完全限定名和方法名。    * 类别 ：运行所有 [类别](https://junit.org/junit4/javadoc/4.12/org/junit/experimental/categories/Categories.html) 中的测试。 在右侧字段中指定类别。    * 唯一标识符 ：在测试范围内包含具有特定 ID 的测试和容器。 请在右侧字段中指定 ID。    * 标签 ：（JUnit 5）在测试范围内运行带有 `@Tag` 注解的类和方法。 标签表达式是包含以下允许运算符的布尔表达式： `!` （非）、 `&` （与）和 `\|` （或）。 可以使用括号来调整运算符的优先级。 有关更多信息和示例，请参阅 [JUnit 5 文档](https://junit.org/junit5/docs/5.3.0/api/org/junit/platform/launcher/TagFilter.html)。    |
|    工作目录    |  指定用于运行应用程序的工作目录。 此目录是所有相对输入和输出路径的起点。 默认情况下，工作目录是项目根目录。  |

## 更多选项

要查看更多关于如何运行基于 JUnit 测试框架的单元测试的选项，请在   修改选项  对话框中选择   运行/调试配置  。 这将打开   添加运行选项  对话框。

![运行/调试配置：JUnit](https://resources.jetbrains.com/help/img/idea/2026.3/run_config_junit.png)

### 操作系统

|  条目  |  描述  |
| --- | --- |
|    允许多个实例    |  允许此运行配置的多个实例同时执行。 默认情况下，此选项是禁用的，这意味着当您运行该配置时，其他活动的配置会话将终止。  |
|    环境变量    |  点击 ![浏览按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.general.inlineVariables.svg) 打开   环境变量   对话框，您可以在其中创建变量并指定其值。  |

### Java

以下选项特定于 Java 编译器和运行时：

|  条目  |  描述  |
| --- | --- |
|    运行前不构建    |  无需启动构建过程即可立即运行测试。  |
|    修改类路径    |     如有必要，请指定另一个 classpath 或选择您想从 classpath 排除的 dependencies。 当运行时类路径与编译类路径不同时（例如调试库、不同位置等），此选项是必要的。       请使用 ![向上](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.moveUp.svg) 和 ![向下](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.moveDown.svg) 按钮对列表中的依赖项进行排序。 依赖项的顺序很重要，因为 IntelliJ IDEA 会按照列表中指定的顺序处理它们。     |
|    将带有 "provided" 作用域的依赖项添加到类路径    |  将具有   已提供   作用域的依赖项添加到运行时类路径。  |
|    缩短命令行    |     如果类路径过长，或者虚拟机实参过多而超过操作系统的命令行长度限制，请选择一种用于缩短命令行的方法。 选项的选择取决于类加载器的实现。 请注意，某些框架不支持  JAR 清单 ，而其他具有自定义类加载器的框架将无法与   classpath.file   选项良好配合。        * 无 ：IntelliJ IDEA 将不会缩短过长的类路径。 如果命令行超过操作系统的限制，IntelliJ IDEA 将无法运行您的应用程序，并会显示一条消息，建议您指定缩短方法。    * JAR 清单 ：IntelliJ IDEA 将通过临时的 `classpath.jar` 传递过长的类路径。 原始类路径在 `manifest` 文件的 `classpath.jar` 中，作为 `class-path` 属性定义。 请注意，如果使用此方法缩短了命令行，则可以预览完整的命令行，而不仅仅是临时 `classpath.jar` 的类路径。    * classpath.file ：IntelliJ IDEA 将把过长的类路径写入一个文本文件。    * @argFiles (Java 9+) ：将使用 [@实参文件选项](https://docs.oracle.com/javase/9/tools/java.htm#JSWOR-GUID-4856361B-8BFD-4964-AE84-121F5F6CF111) 来克服命令行长度限制。     > **Note:** > 如果选择共享运行/调试配置，此设置将被共享，因此无论团队成员使用哪种操作系统，都会应用相同的方法。    |
|    使用“运行到光标”记录性能    |  在调试期间使用 [运行到光标处](stepping-through-the-program.html#measure_execution_time_with_run_to_cursor)时测量执行时间，并将结果作为标签显示在装订区域中。  |

### 测试

|  条目  |  描述  |
| --- | --- |
|    重复    |  如果您想重复运行测试，请从此列表中选择阈值。 您可以选择运行一次测试、  `n` 次（在这种情况下，请在右侧字段中指定次数）、直到测试成功、直到测试失败或直到测试停止。  |
|    复刻模式    |     此选项控制在您想要分叉一些测试时将创建多少个 Java VM。 选择   方法  或   类  分别为每个方法或类创建一个单独的虚拟机。       此列表中的可用选项取决于 [Test kind](#testKind) 设置。     |
|    搜索测试    |     选择项目中 IntelliJ IDEA 将在哪里查找与当前包相关的测试类。 此选项适用于   软件包中的所有  、   标签  、   模式   和   类别   [测试种类](#testKind)。        * 在整个项目中 ：IntelliJ IDEA 将在所有项目模块中查找测试类。 这是默认选项。    * 在单个模块中 ：IntelliJ IDEA 仅会在 使用模块的类路径 字段中选择的模块中查找测试类。    * 跨模块依赖 ：IntelliJ IDEA 只会在 使用模块的类路径 字段中选定的模块及其依赖的模块中查找测试类。    |

### 日志

以下选项与记录此配置的执行相关。 有关更多信息，请参见 [日志](setting-log-options.html)。

|  条目  |  描述  |
| --- | --- |
|     指定要在控制台中显示的日志     |     指定在运行应用程序时显示哪些日志文件。       点击 !["添加"按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.add.svg) 添加新日志。 在   编辑日志文件别名  对话框中，配置以下内容：        * 别名 ：日志将显示的选项卡名称。    * 日志文件位置 ：指定日志文件的路径或 [Ant 模式](https://ant.apache.org/manual/dirtasks.html)。 如果多个滚动日志文件匹配该模式，IntelliJ IDEA 将显示最新的一个。    * 显示所有可由模式匹配的文件 ：显示所有匹配该模式的日志。      对于表中的日志，您可以配置以下选项：        * 处于活动状态 ：显示指定的日志文件。    * 跳过内容 ：不显示先前运行的旧日志消息。    |
|     将控制台输出保存到文件     |  将控制台输出保存到指定位置。 手动输入路径，或点击浏览按钮，然后在 [打开的对话框](null) 中指向所需位置。  |
|     在消息打印到标准输出时显示控制台​​絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍絠絍灾遇崶俶殊糇娘藏瘟殛面勺察揽慄馨湮斜烁磐彦箴腓蘖衮褚觎锲鸵,     |  当应用程序写入标准输出流时激活控制台。  |
|     在消息打印到标准错误流时显示控制台     |  当应用程序写入标准错误流时激活控制台。  |

### 代码覆盖率

以下选项与代码覆盖率相关。 有关更多信息，请参见 [代码覆盖率](code-coverage.html)。

|  条目  |  描述  |
| --- | --- |
|    指定类和包    |  在此表中，指定要测量的类和包。 点击 !["添加"按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.add.svg) 并选择 ![添加类按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.nodes.class.svg)   添加类   或 !["添加软件包"按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.nodes.package.png)   添加包   以指定。 您还可以在列表中选中它们，然后点击 ![移除该软件包](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.remove.svg) 按钮，以从列表中移除类和包。  |
|    排除类和包    |     指定要从覆盖率中排除的类和软件包。       点击 !["添加"按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.add.svg) 并选择 ![添加类按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.nodes.class.svg)   添加类   或 !["添加软件包"按钮](https://resources.jetbrains.com/help/img/idea/2026.3/调试配置](run-debug-configuration.html)

### 语言和框架特定指南

[测试框架](testing-frameworks.html)

### 参考

[调试器设置](settings-debugger.html)

