JetBrains 宣布在 Junie CLI 工具中推出新的 Junie /demo 模式,旨在自动化代码变更验证中的交互部分。开发者无需仅仅运行测试,而是可以描述所需场景,由 Junie 构建并运行应用、与其界面交互,然后生成一份 HTML 报告,其中包含结果、屏幕截图和执行视频。
新模式如何工作?
Junie 会分析项目并提出构建和运行计划,然后在用户批准后创建配置文件。用户可以在执行请求前选择来自分支、会话、工作树或最新 commit 的变更,并提交一项请求,指定操作和预期结果。在 JetBrains 提供的示例中,代理在任务跟踪工具中确定两个问题,将其状态改为 Done,检查计数器是否发生变化,然后重新加载页面,以确认结果仍然保留。
用户可以在代理浏览界面的过程中直接跟踪执行情况。视频包含每个场景的开场幻灯片和结果结束幻灯片,还配有可启用或禁用的说明字幕。JetBrains 表示,某个模型会在录制完成后分析屏幕截图,以制作这些幻灯片,而旁白可能会在后续更新中加入。
从手动演示到可审计的审查
HTML 报告汇总了原始请求、结果、视频、屏幕截图和已执行步骤,并说明哪些测试成功、失败或仍未完成。因此,开发者、质量保证工程师或希望了解功能行为的团队成员都可以审查这些输出,而不必只阅读代码变更。
certi.news 认为,这里的实际价值不在于取代自动化测试,而在于为界面行为增加可视化证据。变更是否准备就绪仍由审查者负责;代理完成运行并不自动意味着检查成功。因此,JetBrains 的示例要求 Junie 给出明确的 verdict,只有写入 PASS 时才会传递结果,而 FAIL、PARTIAL 等值或缺少结果都会导致结果检查失败。
与 GitHub Actions 的集成及成本
JetBrains 已在内部通过 GitHub Actions 对超过 1,500 个独立合并请求使用该模式,并生成了超过 2,100 个演示视频。公司还将其用于发布分支上的 22 个 smoke 测试场景,总计超过 1,300 次内部测试。公司提供了两个可调整的 YAML 文件示例:一个用于检查值得演示的变更,并将证据链接添加到合并请求中;另一个用于发布测试,可在 push 时或手动触发。
这些示例依赖 GitHub Artifacts,因此不需要单独的视频托管服务。JetBrains 表示,在一次内部测量中,运行 22 个案例使用 GPT-5.6 SOL,按照其采用的订阅折算方式,成本为 19.94 美元,CI 运行环境的成本另计。这些是受应用、构建步骤和请求措辞影响的内部数据,并非适用于所有项目的一般估算。
环境与运行限制
该模式运行在基于 Debian Bookworm 构建的 Docker 容器中,其中包含 Chromium、Node.js、Xvfb、窗口管理器以及 xdotool 和 ffmpeg 等工具。它使用支持 Computer Use 的模型来控制点击、键盘操作和屏幕截图。复杂存储库可以为虚拟机定义多个模板,并为服务和界面设置单独的配置。
没有受支持的模型时不会启动。Junie 会在可用且支持 Computer Use 的情况下使用当前活动模型,否则会从包含 GPT-5.6 SOL、GPT-6 Astra 和 GPT-5.5,随后是 GPT-5.4 的列表中选择,并在 /demo 模式下设置 High reasoning effort。运行过程还需要数分钟,其最大价值在于将重复的交互式验证转移到可检查的流程中,而不是在没有人工审查的情况下保证结果正确。