2026-07-13 赛博日记

生成时间:2026-07-13 23:58

📝 今日概要

AI测试用例生成方案系统化梳理,完成从零设计的通用方案文档;自动化稳定性改进方案实施完成,新增失败分类、自适应重试、版本备份与恢复能力。

🔍 核心技术进展

AI测试用例生成方案(来源:Cursor会话)

  • 从零设计通用方案:

    • 重写AI_TEST/docs/AI测试用例生成方案.md,移除迁移导向的店员版特定内容
    • 明确五阶段流程:用例自动生成 → 反向校验需求 → 测试人优化 → AI初审用例 → 评审入库
    • 定义体系架构:Rules+Skills分层、目录约定、TAPD MCP依赖
    • 规范产出物与数据模型:testcases.json字段、testcases.md格式
  • 流程图可视化:

    • 生成draw.io格式流程图,可直接复制到飞书
    • 优化为通用方案表述,移除本项目特定技能与文件名引用
    • 标注Superpowers能力:创意脑暴、质量自检、评审把关
    • 体现人机分工:🤖 AI主导/辅助 · 👤 人工主导
  • Skills体系梳理:

    • 梳理测试用例生成相关Skills:tapt-testcase-generation主入口+6个子文档
    • 明确各子文档职责:iteration-workflow(整迭代SOP)、requirement-review(正向评审)、batch-anti-interference(多Story抗干扰)、prompt-reference(用例模板)、retry(JSON重试)、tapd-handoff(TAPD回传)
    • 识别项目特定表述:主要集中在示例/模板,核心流程规范通用
  • 验收用例提取标准:

    • 明确验收项来源:需求验收表、角色场景编号、自定义编号、参考用例文档
    • 规范acceptance字段映射:AC-1~AC-n、集团-1、切换-1等验收编号
    • 定义P0验收用例提取:p0_candidates+主路径+高风险域(资金/库存/发票/合规)
    • 识别当前实践差距:规范要求每条case有acceptance映射,但实际298条用例中绝大多数为空
  • 项目特定表述扫描:

    • prompt-reference.md:含PMS模块缩写(TC-PWS-001)、多租户验收表(集团-1、切换-1)
    • iteration-workflow.md:workspace_id示例40013426、采购平台(pms)、模块前缀TC-PWS/PAP/INV/PWC
    • requirement-review.md:集团/子公司/切换公司评审维度、资金/库存/发票高风险域
    • 建议迁移方式:新增config/{project}-profile.yaml,Skills只引用占位符

AI自动化用例稳定性改进(来源:Cursor会话)

  • 失败分类体系(Phase 1):

    • 新增failure-taxonomy.ts:8类失败分类(case_issue、device_connection、element_not_found、timeout、network_error、model_failure、assertion_failed、unknown)
    • 扩展step-judge.service.ts:裁判JSON含failure_category/retry_recommendation/enhancement_hints
    • 报告展示失败分类:phone-agent-report-blocks.ts
  • 自适应重试与备份(Phase 2):

    • 新增case-version.service.ts:备份至userData/storage/case-versions/
    • 新增adaptive-retry-enhancer.service.ts:LLM+启发式改步骤描述
    • 新增adaptive-retry-orchestrator.service.ts:备份→增强→通过apply/失败discard
    • IPC+preload:caseVersion.、adaptiveRetry.
    • TestPlanView.vue:APP模式重试前自动adaptive prepare
    • TestCaseLibraryView.vue:编辑页版本历史+一键恢复
    • SettingsView.vue:自适应重试开关与自动写回配置
  • 运行时容错(Phase 3):

    • phone_agent/model/client.py:模型API 3次指数退避(PHONE_AGENT_MODEL_MAX_RETRIES)
    • adb/hdc/screenshot.py:截图最多3次重试
    • handler.py:Tap/Launch失败重试1次
    • runner.py:PC整步重跑(YSB_WEB_STEP_RERUN,默认开)
  • 质量保障(Phase 4/5):

    • step-clarity.service.ts:执行前模糊步骤检测
    • case-stability-metrics.service.ts:flaky_score/first_pass_rate,高flaky自动打tag需人工稳定化
  • 自动化验证:

    • Python语法检查:5个改动文件全部通过
    • Python导入检查:通过(PYTHONPATH=项目根)
    • 新增TS服务ESLint:0 error,2 warning
    • Web API类型检查:tsc –noEmit通过
    • 纯函数冒烟:6/6通过(verify-stability-changes.ts)

✅ 今日待办完成

暂无记录(Todoist无完成和到期任务)

💡 深度洞察与经验教训

洞察

  • 方案通用化优先:Skills应保持通用规范,项目差异全部进配置文件,迁移时只增配置不改Skill正文
  • 证据驱动设计:失败分类、重试策略应基于真实失败类型,而非抽象分类;需收集stdout、截图、裁判结果作为证据
  • 分层容错策略:模型层(API重试)、动作层(Tap/Launch重试)、步骤层(整步重跑)、用例层(自适应重试)多层容错提升稳定性

教训

  • 规范落地差距:AI测试用例生成Skills已定义acceptance映射规范,但店员版298条用例中绝大多数为空,说明规范需配套执行检查
  • 完整链路验证:静态检查通过不代表功能验收,需真机/Electron E2E验证自适应重试、版本备份、IPC全链路
  • 配置统一性:adaptiveRetryMaxAttempts仅设置页可配置,编排层未读取,实际次数仍由retry_count控制,配置需统一到执行层

🚀 未来行动设想

  • 补Web测试计划+用例库单条的自适应重试接入
  • 让adaptiveRetryMaxAttempts在orchestrator中生效
  • 把verify-stability-changes.ts挂到package.json的npm run verify:stability
  • 实施P0手工测试:APP测试计划中模糊用例→自适应增强→重跑→自动写回→版本恢复
  • 补建batch-anti-interference.md(Skills已引用但未创建)
  • 新增requirement-gap-analysis.md模板+Agent Prompt(阶段2反向校验)
  • 新增testcase-ai-review.md模板+brainstorming检查清单(阶段4AI初审)

📊 自动化统计

  • 捕获Memory数:2个(当日记忆+Claude工作记录)
  • 笔记更新数:0个
  • Todoist完成任务数:0个