用途
该技能用于把测试金字塔方法应用到一个具体功能上:让每个测试场景落到仍能捕获其失败的最低(最便宜)层级。输入可以是功能描述,也可以是此前 QA 分析产出的风险场景。
主要能力
- 盘点现有测试:借助 scan-automation-project 技能清点项目已有测试。
- 识别项目实际使用的测试层级,以及各层级内部的测试类型。
- 将每个场景分配到能捕获其失败的最低层级,并指定该层级内的具体类型。
- 给出各层级与类型的覆盖比例建议。
- 输出测试计划,包含场景到层级与类型的映射及理由。
- 在环境支持渲染图表时,可附加饼图或测试金字塔图,展示各层级与类型的测试数量与占比;纯终端输出时跳过图表。
- 对手动项给出验证方法(操作 → 预期结果)。
测试层级
默认层级自下而上为:unit + integration、e2e、manual。
一个层级可以包含多种测试,并有各自的运行器,例如 e2e api / e2e web / e2e mobile。项目也可能采用其他测试层级,如 component、functional、contract、visual。测试层级与类型应取自项目实际情况;仅当扫描未发现任何内容时才使用默认值。
使用方式
- 使用 scan-automation-project 技能盘点现有测试。
- 检测项目的测试层级及各层级内的测试类型。
- 将每个场景分配到能捕获其失败的最低层级,并指定层级内的类型。
- 推荐各层级与类型的覆盖比例。
规则
- 已被自动化测试覆盖的场景,不再建议手动验证。
- 将场景向上层分配时,需解释为何它不能放在更低层级。
- 同一层级内,一种类型不覆盖另一种类型:e2e web 不覆盖 e2e api。
- 对已有自动化场景进行泛化;仅在用户要求时才扩展。
输出结构
- 📐 Testing levels 部分:使用的层级与类型,以及与默认值不同之处。
- ☑️ What is already tested 部分:各层级与类型现有测试的数量与范围。
- 🧪 Testing plan 部分:场景 → 层级与类型(如 e2e / api),并附理由。
- 手动项:如何验证(操作 → 预期结果)。
后续动作
计划完成后可提供:
- 编写手动测试用例或检查清单 → qa-write-test-cases 技能。
- 将手动用例自动化为自动测试 → automate-manual-test-cases 技能。
- 将测试映射到源文件以支持变更感知运行 → qa-test-code-coverage 技能。
适用场景与限制
适用于需要为功能规划测试分层、在成本与覆盖之间取舍的 QA 工作。其效果依赖项目扫描结果;若扫描未发现测试层级,则回退到默认层级。资料未提供收费、价格、平台支持范围等信息。