Files

1.6 KiB

id, title, phase, deps, status, created, owner
id title phase deps status created owner
T-104 完成 Chrome/Edge 双实例与异常退出 smoke 1
T-103
DONE 2026-07-22 codex

需求与背景

核心进程能力必须在真实 Windows Chrome/Edge 上验证,fake runner 不能证明 Chromium 多进程、profile lock 和 Job Object 行为。

方案与边界

  • 使用 go test -tags smoke 运行真实临时 profile smoke。
  • 每个浏览器使用独立临时 user data dir 和 headless 模式,避免污染用户 profile。
  • 验证启动、PID、registry 占用、重复启动、Chrome/Edge PID 隔离和 force stop 后退出。
  • 优雅关闭由单元 fake 覆盖;真实 headless smoke 重点验证实例级强制回收。

验收要点

  • go test ./...、go vet ./... 通过。
  • scripts/smoke-browser.ps1 在 Chrome 和 Edge 均已安装时通过。
  • 未安装的浏览器必须明确记录 skip,不能伪报成功。
  • smoke 失败时不标记 DONE。

执行记录

  • 状态:DONE
  • 变更:新增 smoke_windows_test.go 和 scripts/smoke-browser.ps1,覆盖 Chrome/Edge 双实例、PID 隔离、registry 重复占用和 Job Object force stop。
  • 验证:go test ./...、go vet ./...、.\scripts\smoke-browser.ps1 均通过;本机 Chrome 和 Edge 均安装并完成真实 headless smoke。
  • 阻塞:
  • 残余风险:headless 模式不创建可见 message window,外部 profile inspector 在本次 smoke 中未取得 lock/window 证据;需要后续可控 headful/offscreen smoke 单独验证。force stop 返回 exit status 1,已按被终止进程的预期语义记录。