WireMock
GoLand 提供对 WireMock 的支持,这是一种用于模拟 HTTP 服务的工具。 模拟指的是为 API 调用创建 stub 或预设响应,用以模仿真实 API 的行为,无需实际与服务器通信。
安装 WireMock 插件
此功能依赖于 WireMock 插件,您需要安装并启用该插件。
按 Ctrl+Alt+S 打开设置,然后选择 。
打开 Marketplace 选项卡,找到 WireMock 插件,然后单击 安装 (如提示请重启 IDE)。
创建 WireMock stub
从头开始创建基本 WireMock stub
如果 JSON 文件位于 映射 文件夹中或包含 "mappings" 键,GoLand 会将其识别为 WireMock stub 文件,并提供相应的编码辅助功能。
在 项目 工具窗口中,右键单击文件夹(或按 Alt+Insert ),然后选择 。
在打开的 新建文件 对话框中,输入文件名称。 例如,您可以输入
mappings/my-stub.json,GoLand 将创建 映射 文件夹并将新文件放入其中。开始输入键名称以获取适用键的建议及其快速文档说明。

从 Endpoints 工具窗口创建 WireMock stub
打开 端点 工具窗口()。
右键单击 API 端点并选择 生成 WireMock 存根。

新创建的 stub 文件将以 scratch 的形式保存在 下。
从 OpenAPI 规范创建 WireMock stub
打开 OpenAPI 规范文件。
单击
并选择 生成 WireMock 存根。

新创建的 stub 文件将以 scratch 的形式保存在 下。
运行 WireMock 服务器
打开 stub 文件。
单击编辑器右上角的
。

此操作将启动 WireMock 服务器,您可以在 服务 工具窗口中查看运行状态( 或按 Alt+8)。

如需自定义 GoLand 启动 WireMock 服务器的方式,您可以 修改 WireMock 运行配置 或创建新的配置。
发送 HTTP 请求
使用 GoLand 的 HTTP Client 向 WireMock 服务器发送 HTTP 请求并预览响应。
打开 stub JSON 文件。
将光标放在端点 URL 上,按 Alt+Enter (显示上下文操作 ),然后选择 在 HTTP Client 中生成请求。
您可以在 服务 工具窗口中查看 stub 响应。

启用 Handlebars 模板支持
GoLand 为 WireMock 响应模板中使用的模板语言提供代码辅助功能。 要使用此功能,需安装并启用 Handlebars/Mustache 插件。
打开 stub JSON 文件。
在编辑器右上角,单击
(使用 Handlebars 模板)。 如果尚未安装 Handlebars/Mustache 插件,该操作将自动安装插件。
此操作将使 GoLand 将放置在 __files 目录中的 JSON 文件视为响应模板,并提供适当的 Handlebars 代码辅助功能,包括针对 Handlebars helpers 的自动补全。

WireMock 运行配置
GoLand 提供专用的 WireMock 运行配置,允许您自定义 WireMock 服务器的启动方式。

主要参数
- 名称
为运行配置指定名称。
- Stubs 文件
要运行的 WireMock stub 所对应的 JSON 文件的位置。
- 服务器端口
WireMock 服务器的 HTTP 端口号。 输入
0以动态指定端口。
修改选项
- 详细输出
启用输出到标准输出的详细日志(相当于
--verbose选项)。- 启用全局 Handlebars 模板
通过传递
--global-response-templatingWiremock 命令行选项 ,使用 Handlebars 模板渲染所有响应定义。- JRE
如果希望在 JBR 之外的运行时环境中运行 WireMock,请选择一个 JRE。
日志
指定运行应用期间生成的日志文件应显示在 运行 工具窗口的专用选项卡中的控制台中。
启动前
选择在启动所选运行/调试配置之前要执行的任务。