用途:引导使用 v3 的 AI 测试生成能力,包括基于模式的测试合成、多框架支持和从代码分析智能推导测试用例。核心规则是持久优先(ADR-113):实现可被重写,持久资产是重写后仍成立的测试,因此按持久性分层生成。\n\n主要能力:分三层。Durable(不变量、契约/模式、属性测试、行为 e2e,位于模块公共边界)可跨重写存活,每个目标至少写 1 个;Ephemeral(示例式单元测试、mock 调用/交互测试)与实现耦合,用于红绿循环;Live(针对真实环境的监控、漂移、成本断言)。每个生成测试须带 // @tier durable|ephemeral|live 标签。语言互换启发式:若用另一种语言重写模块会使测试失效,说明边界错误,应上移层级。测试按 oracle 评分:能在真实代码通过、在植入的变异 bug 上失败才合格;无断言或只测 happy path 的测试被拒绝。\n\n使用方式:支持 CLI,如 aqe test generate --file src/services/UserService.ts --framework jest、--coverage 90 --type unit、--pattern repository --target src/repositories/;也支持代理工作流。策略包括代码分析生成、模式生成、覆盖率缺口驱动生成。框架支持 Jest、Vitest、Mocha、Pytest、JUnit 的单元/集成,e2e 部分有限。质量检查涵盖 durability、fault_detection(mutation_score_min 0.6)、assertions、isolation、naming、coverage(分支 80、语句 85,但覆盖不等于足够)。用前需初始化 fleet(aqe health 诊断,aqe init 重新初始化)。\n\n适用场景:为新代码生成测试、提升覆盖率、跨框架迁移测试、应用 TDD、生成边界用例。限制:文件超 3000 行时输出会被截断,应按模块而非整目录生成;新代码库需先确认已安装框架(不同 mock API);生成后须实际运行,防止出现桩或硬编码的“完成表演”;模块边界至少生成 1 个集成测试以发现零接线问题。相关技能:mutation-testing、test-automation-strategy、qe-coverage-analysis。
qe-test-generation
测试与质量
更新于 10-16 03:48