# 运行/调试配置：ScalaTest、uTest、mUnit、Specs2

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

> **TL;DR**
> 必需插件：   Scala  ： [安装方法](get-started-with-scala.html#scala_plugin)

Scala 运行/调试配置定义 Scala 测试的运行方式。 本节介绍以下框架的配置选项：

* [ScalaTest](https://www.scalatest.org/)

* [mUnit](https://scalameta.org/munit/)

* [Specs2](https://etorreborre.github.io/specs2/)

* [uTest](https://github.com/com-lihaoyi/utest)

> **Tip:**
> 还可以使用 [JUnit](run-debug-configuration-junit.html) 测试 Scala 代码。

Procedure: 为 Scala 测试创建新配置

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))。

该列表显示运行/调试配置模板。 在左侧选择所需的配置：ScalaTest、mUnit、Specs2 或 uTest。

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

![Scala 测试运行配置](https://resources.jetbrains.com/help/img/idea/2026.3/workspace.xml` 。     |
|    运行    |  选择您要运行配置的目标环境。 除了在本地运行之外，您还可以选择通过 SSH 在远程机器上或在 Docker 容器中运行您的应用程序。 有关更多信息，请参见 [运行目标](run-targets.html)。  |

## 配置选项卡

|  条目  |  描述  |
| --- | --- |
|    测试种类    |     从列表中选择测试的作用域，并根据选择填写字段：        * 测试名称 ：选择此选项以运行指定测试。 测试名称出现在 测试名称 字段中。    * 软件包中的所有 ：运行包中的所有单元测试。 请在右侧字段中指定包。    * 类 ：运行类中的所有单元测试。 请在右侧字段中指定类的完全限定名称。    * 正则表达式 ：运行所有类名称和/或测试名称匹配给定正则表达式的单元测试。      此外，还可用以下选项：        * 使用 sbt ：（适用于 ScalaTest 和 uTest ）将构建操作委托给 sbt shell 或服务器实例，而非内置编译器。 仅当 sbt 构建顺利完成并无错误时，才认为构建成功。    * 使用 sbt 的 UI ：（适用于 ScalaTest ）以与 [测试运行程序](viewing-and-exploring-test-results.html) 相同的格式显示测试结果。    |
|    VM 选项    |     指定启动应用程序时要传递给 Java 虚拟机的选项，例如  `-mx` 、  `-verbose`  等。       指定 JVM 选项时，请遵循以下规则：        * 使用空格来分隔各个选项。    * 如果选项的值包含 Space，请用双重引用符将该值或实际的 Space 括起来。    * 如果选项包含作为值一部分的双重引用符，请使用反斜杠对双重引用符进行转义。    * 您可以将环境变量值传递给自定义 Java 属性。      ```PLAINTEXT -Xmx1024m -Dspaces="some arg" -Dmy.prop=\"quoted_value\" -Dfoo=${MY_ENV_VAR}  ```      在此字段中使用代码补全：开始输入标志的名称，IDE 会建议可用的命令行选项列表。 这适用于  `-XX:`  和  `-X`  选项以及一些不是由 IntelliJ IDEA 自动配置的标准选项，例如  `-ea` ，但不适用于  `-cp`  或  `–release` 。       在此字段中指定的  `-classpath`  选项会重写模块的类路径。     |
|    环境变量    |  点击 ![浏览按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app-client.expui.inline.browse.svg) 打开   环境变量   对话框，您可以在其中创建变量并指定其值。  |
|    工作目录    |  指定在运行测试时充当当前目录的目录。 它将作为所有相对输入和输出路径的根目录。 默认情况下，项目文件所在的目录将用作工作目录。 请输入目录名称，或点击 ![浏览按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app-client.expui.inline.browse.svg) 并在打开的对话框中选择所需目录。  |
|    使用模块的类路径    |  从此列表中，选择其类路径将用于运行应用程序的模块。  |
|    JRE    |  您可以将此字段留空以使用默认 JRE，或从列表中选择一个。  |
|    将消息打印到控制台    |  如果您希望将信息消息打印到 Scala 控制台，请选择此复选框。  |

## 代码覆盖率选项卡

使用此选项卡配置 [代码覆盖率](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.nodes.package.svg)   添加包   以指定要测量的类和包。 您还可以在列表中选中它们，然后点击 ![移除该软件包](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/app.nodes.package.svg)   添加包   以指定不应测量的类和包。 您还可以在列表中选中它们，然后点击 ![移除该软件包](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.remove.svg) 按钮，以从列表中移除类和包。  |

## 日志标签

使用此选项卡指定运行或调试时生成的日志文件应显示在控制台上，即 [Run](run-tool-window.html) 或 [调试工具窗口](debug-tool-window.html) 的专用选项卡上。

|  条目  |  描述  |
| --- | --- |
|    将显示在控制台中的日志文件    |  |
|    处于活动状态    |  选中此列中的复选框以在 [运行工具窗口](run-tool-window.html) 或 [调试工具窗口](debug-tool-window.html) 中显示日志条目。  |
|    日志文件条目    |     此列中的只读字段列出了要显示的日志文件。 列表可以包含：        * 特定文件的完整路径。    * [Ant 模式](http://ant.apache.org/manual/dirtasks.html#patterns)定义要显示的文件范围。    * 用于替代完整路径或模式的别名。 这些别名也显示在选项卡的标题中，对应的日志文件在其中显示。 如果日志条目模式定义了多个文件，选项卡标题将显示文件名而不是日志条目别名。    |
|    跳过内容    |  选中此复选框以跳过所选日志的先前内容。  |
|  !["添加"按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.add.svg)  |  点击此按钮以打开 [编辑日志文件别名对话框](null)，在此对话框中您可以选择一个新的日志条目并为其指定别名。  |
|  ![编辑按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.edit.svg)  |  点击此按钮以在 [编辑日志文件别名对话框](null)中编辑所选日志文件条目的属性。  |
|  ![删除按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.remove.svg)  |  点击此按钮从列表中删除所选日志条目。  |
|    将控制台输出保存到文件    |  选择此复选框以将控制台输出保存到指定位置。 请手动输入路径，或点击浏览按钮并指向 [打开的对话框](null)中的所需位置。  |
|    在消息打印到标准输出流时显示控制台    |  选中此复选框以激活输出控制台，并在关联进程写入 Standard.out 时将其前置。  |
|    在消息打印到标准错误流时显示控制台    |  选中此复选框以激活输出控制台，并在相关进程写入 Standard.err 时将其置于前端。  |

## 启动前

在此区域，您可以指定在启动所选的运行/调试配置之前需要执行的任务。 任务将按其在列表中出现的顺序执行。

|  条目  |  快捷键  |  描述  |
| --- | --- | --- |
|  !["添加"按钮](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), `Ctrl+N` (Sublime Text), `⌘ N` (Sublime Text (macOS)), `Ctrl+N` (Visual Studio), `⌘ N` (Visual Studio (macOS)), `Alt+Insert` (NetBeans), `Alt+Insert` (Eclipse), `⌘ N` (Eclipse (macOS))  |     点击此图标以添加以下可用任务之一：        * 启动 Web 浏览器‍™™™™™™™‍ ：选择此选项以启动浏览器。 在打开的对话框中，选择浏览器类型并提供起始 URL。 此外，指定是否希望浏览器与 JavaScript 调试器一起启动。    * 运行外部工具 ：选择运行外部应用。 在打开的对话框中，选择您想要运行的一个或多个应用程序。 如果它在 IntelliJ IDEA 中尚未定义，请添加其定义。 如需更多信息，请参阅 [外部工具](configuring-third-party-tools.html) 和 [外部工具设置](settings-tools-external-tools.html)。    * 运行另一个配置 ：选择执行另一个运行/调试配置，并等待其完成后再启动当前配置。 如果您想并行运行多个配置，请使用 [compound run/debug configuration](run-debug-multiple.html#compound-configs)。    * 构建 ：选择编译指定的模块。 [Build Module命令](compiling-applications.html#compile_module) 将会被执行。 如果在编译过程中发生错误，IntelliJ IDEA 将不会尝试启动运行/调试配置。    * 构建项目 ：选择编译整个项目。 [Build Project 命令](compiling-applications.html#compile_module) 将被执行。 如果在编译过程中发生错误，IntelliJ IDEA 将不会尝试启动运行/调试配置。    * 构建，不进行错误检查 ：与 构建 选项相同，但 IntelliJ IDEA 将会尝试启动运行/调试配置，而不考虑编译结果。    * 构建制品 ：选择此选项以构建一个或多个 [构件](working-with-artifacts.html)。 在打开的对话框中，选择应构建的 artifact。    * 运行远程外部工具 ：添加一个 [远程 SSH 外部工具](settings-tools-remote-ssh-external-tools.html)。    * 运行 Grunt 任务 ：选择此选项以运行 Grunt 任务。 在打开的 Grunt 任务 对话框中，指定定义所需任务的 `Gruntfile.js` ，选择要执行的任务，并指定传递给 Grunt 工具的参数。 指定 Node.js 解释器的位置、传递给它的参数以及 grunt-cli 包的路径。    * 运行 Gulp 任务 ：选择此选项以运行 Gulp 任务。 在打开的 Gulp 任务 对话框中，请指定定义所需任务的 `Gulpfile.js` ，选择要执行的任务，并指定传递给 Gulp 工具的参数。 指定 Node.js 运行时的位置、要传递给它的参数，以及 gulp 包的路径。    * 运行 Maven 目标 ：选择此选项以 [运行一个 Maven 目标](work-with-maven-goals.html)。 在打开的对话框中，选择要运行的目标。    * 运行 npm 脚本 ：选择此选项以执行 npm script。 在打开的 npm 脚本 对话框中，指定 [npm 运行/调试配置设置](null)。    * 编译 TypeScript ：选择运行内置的 TypeScript 编译器，从而确保您对 TypeScript 代码所做的所有更改都反映在生成的 JavaScript 文件中。 在打开的 TypeScript 编译设置 对话框中，选择或清除 检查错误 复选框，以配置在检测到任何错误时编译器的行为： * 如果选中 检查错误 复选框，编译器将显示所有错误，运行配置将不会启动。 * 如果取消选中 检查错误 复选框，编译器将显示所有检测到的错误，但仍会启动运行配置。    * 上传文件到远程主机 ：选择此选项以根据 [默认服务器访问配置](configuring-synchronization-with-a-remote-host.html)自动 上传应用程序文件到服务器 。    * 断开数据源 ：如果您希望在运行/调试配置运行之前中断与数据源的连接，请选择此选项。    |
|  !["移除"按钮](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.remove.svg)  |  `Alt+Delete` (Windows), `⌘ ⌦` (macOS), `⌘ ⌦` (IntelliJ IDEA Classic (macOS)), `⌘ ⌦` (macOS System Shortcuts), `Alt+Delete` (XWin), `Alt+Delete` (GNOME), `Alt+Delete` (KDE), `Alt+Delete` (Emacs), `Alt+Delete` (Sublime Text), `⌘ ⌦` (Sublime Text (macOS)), `Ctrl+R, D` (Visual Studio), `⌘ R, D` (Visual Studio (macOS)), `Alt+Delete` (NetBeans), `Alt+Delete` (Eclipse), `Alt+Delete` (Eclipse (macOS))  |  点击此图标以从列表中删除所选任务。  |
|  ![编辑](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.edit.svg)  |  `Enter` (Windows), `⏎` (macOS), `⏎` (IntelliJ IDEA Classic (macOS)), `⏎` (macOS System Shortcuts), `Enter` (XWin), `Enter` (GNOME), `Enter` (KDE), `Enter` (Emacs), `Enter` (Sublime Text), `⏎` (Sublime Text (macOS)), `Enter` (Visual Studio), `⏎` (Visual Studio (macOS)), `Enter` (NetBeans), `Enter` (Eclipse), `⏎` (Eclipse (macOS))  |  点击此图标以编辑所选任务。 在打开的对话框中进行必要的更改。  |
|     ![方法 up](https://resources.jetbrains.com/help/img/idea/2026.3/app.expui.general.moveUp.svg)       ![方法 down](https://resources.jetbrains.com/help/img/idea/2026.3/调试配置](run-debug-configuration.html)

### 过程

### 外部链接

[Scala](http://www.scala-lang.org/)

