Vitest
GoLand 集成了 Vitest ,这是一个 Vite 原生的单元测试框架。 您可以从编辑器中或通过运行/调试配置运行、调试、进行快照测试并测量测试覆盖率。
您可以重新运行失败测试,或启用 watch 模式。 当您以该模式启动测试会话时,GoLand 会监视项目源代码中的更改。 一旦对测试或其测试对象进行了任何更改,GoLand 会重新运行受影响的测试,您甚至无需重新启动运行/调试配置。
开始之前
安装 Vitest
在嵌入式 终端 (Alt+F12 )中键入:
npm install --save-dev vitest
运行并调试测试
借助 GoLand,您可以直接从编辑器快速运行或调试单个 Vitest 测试,也可以创建运行/调试配置以运行或调试部分或全部测试。
有关为 JavaScript 和 TypeScript 代码创建 Vitest 测试的更多信息,请参阅 Vitest 官方网站上的 Vitest 功能。
在编辑器中运行或调试单个测试
创建 Vitest 运行配置
打开 运行/调试配置 对话框(主菜单中的 ),单击左侧窗格中的
,然后从列表中选择 Vitest。 运行/调试配置:Vitest 对话框随之打开。
指定要使用的 Node.js 解释器。
如果您选择 项目 别名,GoLand 将自动使用 Node 解释器 字段中项目默认的解释器。 在大多数情况下,GoLand 会检测项目默认的解释器并自动填充该字段。
您也可以选择另一个已配置的本地解释器,或点击
并配置一个新解释器。
可选地指定传递给 Node.js 的 Node.js 特定选项参数 和 环境变量。
指定
vitestpackage 的位置。指定应用程序的工作目录。 默认情况下, 工作目录 字段显示项目根文件夹。 要修改此预设设置,请指定所需文件夹的路径。
指定要运行的测试。 可以是某个特定测试或套件、整个测试文件,或包含测试文件的文件夹。
默认情况下,会使用 vite.config.ts 。 如果缺少 vite.config.ts ,或者您希望使用自定义配置,请指定要使用的 vitest.config.ts 。 详细信息请参阅 Vitest 官方网站。
可选:
配置在测试或相关源文件发生更改时自动重新运行测试。 为此,请在 Vitest 选项 字段中添加
--watch标志。您还可以添加其他 Vitest 选项。 有关更多信息,请参阅 Vitest 官方网站。
可选:
在 Node 选项 字段中,输入要传递给 Node.js 可执行文件的 Node.js 特定命令行选项。 可接受的选项有:
使用
--require coffeescript/register可在运行时即时将 CoffeeScript 文件编译为 JavaScript。该模式要求 register.js 文件(属于
coffeescriptpackage)位于您的项目中。使用
--inspect或--inspect-brk参数以支持 Chrome 调试协议。
通过运行配置运行测试
重新运行测试
您可以重新运行指定范围中的所有测试 Alt+Shift+R ,或仅重新运行失败的测试。
您还可以在 --watch 模式 下启动测试。 在此模式下,GoLand 会监视测试及相关对象的已保存更改。 一旦检测到更改,GoLand 会在不终止当前测试会话的情况下重新运行受影响的测试。
重新运行失败测试
点击测试结果工具栏上的
。 GoLand 将执行上次会话中失败的所有测试。

如需重新运行特定失败的测试,请在其上下文菜单中选择 。
有关更多信息,请参阅 重新运行测试。
自动重新运行已更新测试(--watch 模式)
打开 Vitest 运行/调试配置,或按照 上文说明 创建一个新配置。
在 Vitest 选项 字段中,输入
--watch。 在自动生成的 所有测试 配置中,已指定--watch选项。启动运行/调试配置。 如果部分测试失败,您可以更新它们或相关对象而无需终止测试会话。 保存更改后,GoLand 会检测这些更改并重新运行受影响的测试。
在以下示例中,
29行的 vue.test.ts 测试失败。 使用--watch选项后,在您将'4 x 4 = 18'替换为'4 x 4 = 16'于 vue.test.ts 并通过 Ctrl+S 保存更改或移出 GoLand 焦点后,该测试将被重新运行。
快照测试
GoLand 还支持 Vitest 快照测试。 当 GoLand 第一次使用 toMatchSnapshot() 方法运行测试时,会创建一个快照文件,并在 toMatchSnapshot () 附近的标记区显示 图标。 点击
可打开生成的快照。
监视代码覆盖率
通过 GoLand,您还可以监视代码被 Vitest 测试覆盖 的情况。 GoLand 会在专用的 覆盖率 工具窗口中显示统计信息,并在编辑器和 项目 工具窗口中直观标记已覆盖和未覆盖的代码行 Alt+1。

为 Vitest 启用代码覆盖率
安装 @vitest/coverage-v8 或 istanbul。 为此,请打开内置的 终端 Alt+F12 ,然后输入以下任一命令:
npm install --save-dev @vitest/coverage-v8npm install --save-dev @vitest/coverage-istanbul。
请参阅 Vitest 官方网站上的 Coverage 了解更多信息。




