Skip to content

Releases: yugejixian/vm-blackbox

v0.1.5 — 实时看板默认开启 + 安全防护 + 自动清理

Choose a tag to compare

@yugejixian yugejixian released this 26 Oct 10:41

新增

  • 实时画面看板默认启动:部署完成后自动打开,-NoViewer 可关闭。
  • 危险按键防护:桌面/任务栏上的 Alt+F4 会被拒绝(防止误弹「关闭 Windows」把测试机直接关掉);普通窗口不受影响。
  • 自动清理:插件按时间/数量裁剪截图;隧道定时清理抓帧临时文件;部署时安装登录自动清理(无管理员时走启动文件夹)。
  • 分享版安装指南 docs/SHARE.md;一键部署脚本 scripts/quick-setup.ps1。

修复

  • 遮蔽生命周期:注入密码时遮、目标窗口关闭/切走立即解除;整页误判时降级为当前行全宽条带。
  • 隧道在访客异常断连时不再崩溃(记录 ECONNRESET 并继续服务)+ 探测失败退避,截图恢复 0.1 秒级。
  • 代理单实例(命名互斥量);虚拟机保存/恢复后 TCP keepalive 自动重连(约 12–25 秒)。
  • 安装路径含空格/中文时隧道无法启动;路径改为相对/环境变量。
  • 抓帧失败时残留临时文件(曾堆积 2.8 GB)——现在 finally 必删 + 启动清理。

安装

dsh plugin add dsh-vm-tester

部署:powershell -ExecutionPolicy Bypass -File .\scripts\quick-setup.ps1 -VmName "<虚拟机名>" -GuestUser "<用户>" -GuestPass "<密码>"

详见 docs/SHARE.md 与 README.md。

v0.1.4 — 一条命令部署 + 分享版指南

Choose a tag to compare

@yugejixian yugejixian released this 26 Oct 07:53

新增

  • scripts/quick-setup.ps1:一条命令完成部署 —— 检查环境 → 投递访客代理 → 设置开机自启 → 启动宿主隧道 → 等待连通。
  • docs/SHARE.md:分享版安装与配置说明(三种不经过插件市场的安装途径)。
  • agent/mk-agent-startup.ps1:在虚拟机内创建代理的开机自启项。

修复

  • 插件包内的隧道启动问题(ESM 作用域)——agent/ 目录现在显式标记为 CommonJS。
  • 部署脚本在代理已运行时不再重复启动实例;对刚恢复/刚启动的虚拟机增加等待与重试。

安装

dsh plugin add dsh-vm-tester
# 或不依赖 npm:
dsh plugin add https://github.com/yugejixian/vm-blackbox/releases/download/v0.1.4/dsh-vm-tester-0.1.4.tgz

部署(在插件目录执行):

powershell -ExecutionPolicy Bypass -File .\scripts\quick-setup.ps1 -VmName "你的虚拟机名" -GuestUser "用户名" -GuestPass "密码"

详细步骤见 docs/SHARE.md。

v0.1.3 — 自包含安装包 + 保姆级部署指南

Choose a tag to compare

@yugejixian yugejixian released this 26 Oct 02:31

新增

  • docs/QUICKSTART.md:保姆级部署流程 —— 装插件 → 准备虚拟机 → 部署访客代理 → 启动宿主隧道 → 冒烟测试 → 常见问题排查表。
  • npm 包现在自包含:包含 agent/(访客代理 + 宿主隧道)、scripts/、docs/、cases/(9 个用例)、assets/,从 npm 安装即可完成全部部署。

改进

  • 默认配置开箱即用:截图目录与虚拟机构建脚本路径跟随当前用户环境,无需手工修改。
  • cordis.patch.yml 的 shotsDir 改为可选(留空即用默认值)。
  • 隧道程序支持环境变量覆盖(QA_SHOTS_DIR / QA_AGENT_DIR / QA_VM_NAME / QA_VBOXMANAGE)。

安装

dsh plugin add dsh-vm-tester

装完请先读 docs/QUICKSTART.md:插件只是遥控器,还需要虚拟机 + 访客代理 + 宿主隧道三样东西。

说明

本版为文档与打包改进,插件 API 与 0.1.1 一致(8 个 vm_* 工具)。

v0.1.2 — 自包含安装包 + 保姆级部署指南

Choose a tag to compare

@yugejixian yugejixian released this 26 Oct 02:25

新增

  • docs/QUICKSTART.md:保姆级部署流程 —— 装插件 → 准备虚拟机 → 部署访客代理 → 启动宿主隧道 → 冒烟测试 → 常见问题排查表。
  • npm 包现在自包含:包含 agent/(访客代理 + 宿主隧道)、scripts/、docs/、cases/(9 个用例)、assets/,从 npm 安装即可完成全部部署。

改进

  • 默认配置开箱即用:截图目录与虚拟机构建脚本路径跟随当前用户环境,无需手工修改。
  • cordis.patch.yml 的 shotsDir 改为可选(留空即用默认值)。

安装

dsh plugin add dsh-vm-tester

装完请先读 docs/QUICKSTART.md:插件只是遥控器,还需要虚拟机 + 访客代理 + 宿主隧道三样东西。

说明

本版为文档与打包改进,插件 API 与 0.1.1 一致(8 个 vm_* 工具)。

v0.1.1 — 凭据库 + 截图遮蔽

Choose a tag to compare

@yugejixian yugejixian released this 25 Oct 13:36

新增

  • vm_type_secret:从宿主凭据库(DPAPI 加密)注入密码,明文不进模型上下文
  • vm_screenshot(mask=[{x,y,w,h}]):截图前按坐标涂黑敏感区域
  • 自动遮蔽:注入密码后,焦点控件与窗口标题栏自动涂黑 180 秒(含宿主抓帧路径)

修复

  • 中文凭据在「凭据库 → 隧道」之间被转码(实测长度 12→14、哈希不符)
  • Chromium 应用被整页遮蔽(改用 UI Automation 取真实焦点元素)
  • vm_screenshot 缺少 via 变量导致工具报错

安装

# npm
dsh plugin add dsh-vm-tester

# 或从本仓库
dsh plugin add github:yugejixian/vm-blackbox

前置条件(虚拟机侧代理 + 宿主隧道)见 README 与 docs/handoff.md。

v0.1.0 — 首个公开版本

Choose a tag to compare

@yugejixian yugejixian released this 24 Oct 15:51

首个公开版本。

安装

dsh plugin add https://github.com/yugejixian/vm-blackbox/releases/download/v0.1.0/dsh-vm-tester-0.1.0.tgz

或从源码目录安装:

dsh plugin add /path/to/vm-blackbox/packages/vm-tester

包含

  • dsh-vm-tester@0.1.0:7 个 vm_* 工具(status / screenshot / click / type / key / key_basic / wait)
  • 附件 dsh-vm-tester-0.1.0.tgz 为该包的打包产物

前置

需要一台已部署 QaTunnel 代理与宿主隧道的 Windows 虚拟机,见仓库 docs/handoff.md。