AI_UIAutomation/prompts/p0_coverage_report.md

4.3 KiB

P0 覆盖情况生成提示词

用途:让 Claude Code 自动盘点 SwitchBot App UI 自动化的 P0 必测项覆盖情况,输出"已覆盖 / 缺口"报告。 用法:在仓库根目录(/Users/woan/Desktop/AI_UIAutomation)直接把下面【提示词】整段发给 Claude 即可。


【提示词】

盘点 P0 必测项(ONES 计划 CQz9YCNX / lib EPfZfC9Y)的自动化覆盖情况,输出覆盖/缺口报告。按以下步骤与规则执行:

数据源

  1. P0 必测项全集 = test-plan/must-test.manifest.ts(187 条;字段:kind(add/feature/ctrl/platform)、onesnamecatdevicefiletestNamestatus)。
    • 构成:添加 add ≈73、单品功能 feature 9、控制 ctrl=2 条协议超级用例逐 step(15975 BLE 49 步 + 15974 WiFi 56 步 = 105)、platform 12。另有 2 条 status:"na"(safety alarm 无目录、强绑定解绑归平台)。
  2. 实际已实现用例 = tests/<品类>/*.test.ts(尤其 *connect* = 添加、*control* = 控制)。
  3. 已调通基线(回归集) = scripts/run-p0-all.shADD_CMDS / CONTROL / TAIL 列表 —— 在里面的都是已调试通过、纳入回归的。

判定规则(重要)

  • 不要信 manifest 的 status 字段(长期是 todo,没维护)。覆盖与否以"是否真有对应用例文件且已调通"为准。
  • manifest.file 是旧的"计划映射"(多指向通用 xxx_connect.test.ts),实际实现常拆成型号专属文件(如 presence_sensor_connect.test.tsmeter_pro_connect.test.tscolor_floor_lamp_connect.test.ts)。要按 设备/型号名 比对,而不是按文件名。
  • "无 [P0]/ONES 标记" ≠ 未覆盖:meter / curtain / hub_matter / find_card / water / remote / plug_mini / motion / contact 等虽未打 ONES 标记,但已调通且在 run-p0-all.sh 回归里 → 算已覆盖。判"已覆盖"时务必交叉核对 run-p0-all.sh
  • 某品类缺整个 connect 文件 = 该品类所有添加项缺口(例:无 tests/camera/camera_connect.test.ts → 除门铃外所有摄像机添加缺口;无 tests/urc/urc_connect.test.ts → URC 添加缺口)。
  • 有 connect 文件但是骨架/未调/无硬件(如 robot/lock/hub/humidifier/fan 的添加)算"未覆盖(未调试)",并注明原因(无硬件 / 未调试)。
  • 控制 ctrl 粒度在 step:已覆盖 = 该 step 所属品类的 *_control.test.ts 已调通对应动作;否则列入未覆盖,并按"出流/清扫/开关/校准/绑定"等动作归类。

执行动作(尽量省 token)

  1. test-plan/must-test.manifest.ts 拿全集。
  2. ls tests/*/*.test.ts + 检测各 *connect* 是否存在、是否带 [P0]/ONES: 标记。
  3. scripts/run-p0-all.sh 的 ADD/CONTROL/TAIL 列表。
  4. 交叉比对,产出报告。不需要真机运行,纯静态盘点。

输出格式

  1. 顶部一行汇总:P0 总数、已覆盖数、缺口数(add / feature / ctrl / platform 分别多少)。
  2. 已覆盖的添加(列品类/型号)。
  3. P0 添加缺口表:列 分组 | 缺的型号 | 原因(原因:无 connect 文件 / 未调试 / 无硬件 / 未实现)。
  4. 单品功能 feature 缺口(列 ONES 号 + 名);并列已做的。
  5. 平台 platform 缺口;并列已做的。
  6. ⚠️ 控制 ctrl(105 step):已调通的动作类 + 大量未覆盖动作类。
  7. 结尾"优先补的建议":按"设备在手 + 无文件"优先(如 camera_connect、urc_connect、锁/Hub/加湿器/循环扇添加),硬件受限的(扫地机、融蜡灯需110V)后置。

报告用中文、表格化、可扫读;不要逐条罗列 105 个 step,按动作归类即可。


备注(维护者看)

  • 新调通一个设备后:① 在用例打 [P0][ONES:<号>] 标记;② 视情况加进 scripts/run-p0-all.sh 的 ADD/CONTROL 列表 —— 这样本提示词能自动算它"已覆盖"。
  • 若要让 manifest status 也准,可另写脚本按上述规则回填 must-test.manifest.tsstatus(todo/done),再用本提示词时可直接信 status。
  • 最近(2026-06)新增已覆盖:门铃、keypad vision pro(ch34+35)、keypad touch、炫彩霓虹灯、RGBWW落地灯、RGBICWW炫彩落地灯(ch44)、presence、meter pro co2、curtain3 2025、safety alarm、plug mini EU、吸顶灯Pro、color bulb、strip light。AI Hub(ch43)流程就绪但继电器接线未生效(硬件阻塞)。