← 返回作品
01 / 02

移动端云真机测试平台

让测试同学在网页上直接操作真实手机。四端架构,WebSocket 打通 Server—Agent—Device 实时链路,接大模型自动生成与修复测试用例。

  • Vue 3
  • Spring Boot
  • Electron
  • WebSocket
  • LangChain4j
  • Docker Compose
背景与目标
测试团队要覆盖几十款真机,过去靠人工借机器、手工回归,设备利用率低且结果不可追溯。目标是让测试同学在浏览器里直接操作真机并自动生成用例。
我的角色
独立负责全栈:领域建模、四端架构设计、WebSocket 实时链路、AI 能力接入与部署编排。
架构
Vue 3 管理端(云端)
  │ HTTP / WebSocket
Spring Boot 服务端   · JWT/RBAC · Quartz · MySQL · Redis
  │ WebSocket(注册鉴权 / 设备发现 / 心跳保活 / 状态同步 / 异常重连)
Java 设备 Agent      · ADB · scrcpy/minicap · WDA · MJPEG / H.264
  │ 本地会话
真机集群              另有 Electron 桌面端用于本地调试
关键取舍

用 WebSocket 长连接而不是轮询

设备状态变化频繁,轮询在几十台设备下会把服务端打满。代价是要自己实现心跳、重连与状态补偿。

画面传输分离:MJPEG 与 H.264 双路径

低端机用 MJPEG 保证兼容,主流机用 H.264 换流畅度。代价是 Agent 侧要维护两套编码。

大模型只放在「生成/修复用例」,不进执行控制

执行链路要确定性,不能有幻觉。AI 只进确定性要求低、价值高的环节。代价是每条生成结果仍要人工复核,模型响应也比规则引擎慢。

服务端与设备 Agent 分离部署

Agent 要贴近设备、直连 ADB,放同一进程会让扩容与故障隔离都变难。代价是多一跳网络与一套部署。

结果
设备连接成功率 98%+;用例编写从手工逐条录入改为 AI 生成加人工确认;Docker Compose 一键起全栈,nginx 统一代理 HTTP 与 WebSocket。