Cucumber.js
Cucumber.js 是一个行为驱动的 JavaScript 开发测试框架。 Cucumber.js 测试是用人类可读的 Gherkin 语言编写的,并存储在具有 功能 扩展名的 功能文件中。 GoLand 与 Cucumber.js 集成,并识别用 Gherkin 编写的功能,因此您可以直接从 IDE 运行 Cucumber.js 测试。
在开始之前
要使用 Cucumber.js 6.0.0+ 版本,请确保您使用的是 GoLand 2020.3.1 或更高版本。
下载并安装 Node.js。
请确保已在设置中启用 JavaScript 和 TypeScript 插件。 按下 Ctrl+Alt+S 打开设置,然后选择 。 点击 已安装 选项卡。 在搜索字段中,键入 JavaScript 和 TypeScript。 有关插件的更多信息,请参阅 插件管理。
按照 从 JetBrains Marketplace 安装插件 中的描述,在 设置 | 插件 页面, Marketplace 选项卡上安装 Cucumber.js 和 Gherkin 插件。
安装 Cucumber.js
在嵌入式 终端 (Alt+F12) 中,输入以下命令之一:
npm install cucumber,用于在您的项目中进行本地安装。npm install -g cucumber用于全局安装。npm install --save-dev cucumber安装 Cucumber.js 作为 开发依赖项。
创建测试定义
使用 GoLand,您可以用 JavaScript 和 TypeScript 编写步骤定义。 GoLand 检测并高亮显示缺少定义的步骤,并建议快速修复以生成它们。
请将文本光标放在没有定义的步骤处,按 Alt+Enter ,然后选择 创建步骤定义 或 创建所有步骤定义。

或者,悬停在步骤上并使用弹出窗口中的链接。

在打开的对话框中,指定新文件的名称和用于编写定义的语言。

如果此类文件已存在,GoLand 会显示一个弹出窗口,您需要选择一个文件以添加定义或选择创建一个新文件。
运行测试
Cucumber.js 测试仅通过运行/调试配置启动。
创建 Cucumber.js 运行配置
打开 运行/调试配置对话框( 在主菜单中),点击
在左侧窗格中,然后从列表中选择 Cucumber.js。 运行/调试配置:Cucumber.js对话框打开。
在 文件或目录 字段中,指定要运行的测试。 输入特定 .feature 文件或文件夹的路径,如果您希望运行一组功能。
指定要使用的 Node.js 运行时。
如果您选择了 项目 别名,GoLand 将自动使用 Node.js 运行时 字段中的项目默认解释器。 在大多数情况下, GoLand 会检测到项目的默认运行时,并自动填写该字段。
您还可以选择另一个已配置的本地解释器,或点击
并配置一个新的。
在 Cucumber 包 字段中,指定存储 cucumber 包的文件夹路径。
指定应用程序的工作目录。 默认情况下, 工作目录 字段显示项目根文件夹。 若要更改此预定义设置,请指定所需文件夹的路径。
可选:
在 名称过滤器 字段中,键入要运行的特定场景名称,而不是功能文件或目录中的所有场景。
指定要传递给可执行文件的命令行参数,例如
-r--require LIBRARY|DIR、-t--tags TAG_EXPRESSION或--coffee。 有关更多信息,请参阅可通过cucumber-js --help命令获取的内置帮助。在 环境变量 字段中,指定您应用程序的环境变量。
通过运行配置运行测试
从配置列表中选择 Cucumber.js 运行/调试配置,然后在列表或工具栏中点击
 。
在 测试运行器 选项卡的 运行 工具窗口中监控测试执行并分析测试结果。 有关详细信息,请参考 探索测试结果。
从测试文件运行测试
要运行单个测试,请在编辑器中打开测试文件,将文本光标置于要运行的场景,然后从上下文菜单中选择 。
要运行来自单个测试文件的所有测试,请在编辑器中打开该测试文件,或在 项目 工具窗口中选择它,然后从上下文菜单中选择 。
在上述任一情况下,GoLand 都会创建一个运行/调试配置,您可以保存并在之后使用。
调试测试
设置断点 (如有必要)。
通过运行配置调试测试
从配置列表中选择 Cucumber.js 运行/调试配置,然后在列表或工具栏中点击
 。
在 测试运行器 选项卡的 运行 工具窗口中监控测试执行并分析测试结果。 有关详细信息,请参考 探索测试结果。
从测试文件调试测试
要调试单个测试, 在必要的地方设置断点 ,将插入点放在要调试的场景处,然后从上下文菜单中选择 。
要调试单个测试文件中的所有测试,请在编辑器中打开测试文件或在 项目 工具窗口中选择测试文件,然后从上下文菜单中选择 。
在上述任一情况下,GoLand 都会创建一个运行/调试配置,您可以保存并在之后使用。
运行和调试使用 TypeScript 编写的测试
创建一个 Cucumber.js运行/调试配置 如上所述。
在 启动前 区域中,点击
,从列表中选择 编译 TypeScript ,然后指定要使用的 tsconfig.json 文件。 GoLand 将在运行 Cucumber.js 之前使用此 tsconfig.json 运行 TypeScript 编译器。

要调试用 TypeScript 编写的测试,请打开您的 tsconfig.json 并设置
"sourceMap": true以启用源映射。
导航
使用 GoLand,您可以在文件与相关的测试文件之间跳转,或从 测试运行器选项卡 中的测试结果跳转到测试。
在编辑器中打开文件,选择上下文菜单中的 或 ,或者直接按 Ctrl+Shift+T ,即可在测试和其主题之间进行切换。
要从 .feature 文件中的步骤跳转到步骤定义,请按住 Ctrl ,将鼠标悬停在步骤上,并在其变成链接时点击该步骤。
从测试结果跳转到测试定义,双击 测试运行器 选项卡中的测试名称,或从上下文菜单中选择 ,或者按 F4。 测试文件在编辑器中打开时,文本光标放置在测试定义处。
配置语法高亮
您可以根据您的喜好和习惯配置 Cucumber.js 相关的语法高亮。
在 设置 对话框(Ctrl+Alt+S ),转到 。
选择配色方案,接受从默认设置继承的高亮设置,或按照 颜色与字体 中的说明进行自定义。