用途
Test Architect 是一个面向测试设计与分析的技能,用于帮助开发者规划测试策略、评估测试覆盖、识别边界条件、诊断不稳定测试,并审计测试套件的整体架构。其范围明确限定为测试设计与分析,不用于运行测试或 CI/CD(由 devops-engineer 负责)、代码审查(由 review 负责)或 TDD 工作流。
主要能力
该技能通过六种模式提供能力:
- design:为功能或模块设计测试策略与测试金字塔,分析测试面、分类复杂度,并按单元层(70-80%)、集成层(15-25%)、E2E 层(5-10%)给出具体测试用例、推荐框架与优先级。
- generate:读取目标文件或函数,识别签名、依赖与副作用,生成测试用例或测试代码,覆盖正常路径、错误路径、边界用例与边界条件。若目标已有测试文件则匹配现有模式生成代码,否则生成策略文本;用户指定 --code 时始终生成测试代码。
- gaps:定位覆盖率报告(如 coverage.json、coverage.xml、.coverage、lcov.info、htmlcov/ 等),运行覆盖率分析脚本,按复杂度加权风险排序缺口,评估未测试代码、复杂度评分、推荐测试类型与优先级(P0 安全/认证、P1 核心逻辑、P2 工具、P3 外观)。当缺口达到 10 个以上时,可渲染仪表板可视化。
- edge-cases:读取函数,提取参数类型、返回类型与约束,运行边界用例生成脚本,覆盖空值/空集合、边界值、类型强制转换、溢出、Unicode、并发等类别,并为每个用例提供输入值、预期行为与理由,标记当前代码可能失败的情况。
- flaky:定位测试结果日志,运行不稳定测试分析脚本,按失败次数与通过次数、失败模式(时序、顺序、资源、状态、环境)分类根因,并针对每种根因推荐修复策略,按失败频率与影响范围排序。
- review:扫描测试套件,评估金字塔平衡、隔离性、命名、覆盖率分布、fixture 健康度、断言质量、速度、确定性等维度,交叉引用源代码检查未测试的公共 API、孤立测试与缺失的负面测试用例,输出架构审计报告。
使用方式
通过命令 /test-architect <action> 调用,action 包括 design、generate、gaps、edge-cases、flaky、review,或留空显示模式菜单与示例。各模式会按需读取对应的参考文件(如 test-pyramid.md、framework-patterns.md、coverage-analysis.md、edge-case-heuristics.md、flaky-diagnosis.md、test-suite-audit.md、property-testing.md、mutation-testing.md),并调用脚本(coverage-analyzer.py、edge-case-generator.py、flaky-test-analyzer.py)或模板(dashboard.html)。参考文件一次只加载一个,不预加载全部。
适用场景
适用于需要设计测试策略、生成测试用例、分析覆盖率缺口、识别边界条件、诊断不稳定测试或审计测试套件架构的开发者与测试工程师。
限制
该技能不运行测试,仅提供设计与分析,可建议命令但不执行;不修改源代码;边界用例必须包含理由;覆盖率缺口按风险而非行数排序;不稳定测试诊断必须先确定根因类别再推荐修复;框架推荐必须匹配项目现有技术栈;属性测试仅在可识别不变量时推荐;每条发现必须引用具体文件与函数;测试生成在项目已有测试模式时必须遵循;仪表板渲染要求缺口达到 10 个以上。