一种元技能,通过协调测试模式、端到端测试和测试代理,统筹项目全流程测试。适用于新项目搭建测试、现有项目提升覆盖率、制定测试策略或发布前质量验证。
测试工作流程是一项面向实际任务的技能,主要用于管弦乐通过协调测试- 标尺技术、 e2e测试技能和测试代理来在整个项目中进行全面测试;此元技能并不定义测试 patt。
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
通过协调 testing-patterns 技能、e2e-testing 技能以及各类测试智能体(testing agents),统筹执行项目范围内的全面测试。该元技能(meta-skill)本身不定义具体测试模式,而是在各阶段将任务精准路由至合适的技能或智能体,确保无遗漏。
请严格按以下顺序执行各步骤。每个步骤均需路由至特定技能或智能体——务必先阅读并应用对应资源,再进入下一步。
扫描项目,了解当前测试基础设施、量化现有覆盖率、识别待覆盖缺口,再开展后续改进。若无基线数据,则无法证明改进成效。
基于阶段 1 的调研结果,为本项目选定适配的测试方法论。
ai/skills/testing/testing-patterns/SKILL.md,结合项目的架构、编程语言与框架,选择匹配的单元/集成测试模式。依据阶段 2 所选模式,生成对应测试用例。
ai/skills/testing/e2e-testing/SKILL.md,为阶段 2 中识别的每条关键用户旅程编写 E2E 测试。验证新增测试是否符合质量标准及覆盖率目标。
testing-patterns 中列出的反模式(如无断言测试、过度 Mock、不稳定测试、测试污染等),发现问题须立即修正。建立长效机制,保障测试套件长期健康运转。
使用本表将具体需求精准路由至对应资源:
| 需求 | 路由至 | 路径 |
|---|---|---|
| 单元/集成测试模式 | testing-patterns | ai/skills/testing/testing-patterns/SKILL.md |
| E2E 测试模式 | e2e-testing | ai/skills/testing/e2e-testing/SKILL.md |
| 代码质量标准 | clean-code | ai/skills/testing/clean-code/SKILL.md |
| 评审检查清单 | code-review | ai/skills/testing/code-review/SKILL.md |
| CI/CD 质量门禁 | quality-gates | ai/skills/testing/quality-gates/SKILL.md |
| 调试测试失败 | debugging | ai/skills/testing/debugging/SKILL.md |
当某项需求明确匹配表中某一行时,请直接访问对应资源。仅当目标是实现**全面覆盖**时,才需执行完整编排流程。
目标值依项目类型而异。请根据对应行设定合理预期:
| 项目类型 | 语句覆盖率 | 分支覆盖率 | 函数覆盖率 | E2E 用户旅程数 | 备注 |
|---|---|---|---|---|---|
| 初创公司 MVP | 60% | 50% | 60% | Top 3 流程 | 仅聚焦关键路径 |
| 生产环境应用 | 80% | 70% | 80% | Top 10 流程 | 在交付速度与质量信心间取得平衡 |
| 类库 / 包 | 90% | 85% | 95% | N/A | 公共 API 必须 100% 覆盖 |
| 关键基础设施 | 95% | 90% | 95% | 全部流程 | 零容忍任何缺口 |
以上为最低要求。时间充裕时建议追求更高目标,但切勿因“虚荣指标”(vanity metrics)阻塞发布——应优先保障**有意义的覆盖**,而非单纯堆砌百分比。
使用本模板记录项目的测试策略。在编排流程中填写完毕,并长期保存于代码仓库中。
# 测试策略 ## 项目概览 - **项目**: [名称] - **类型**: [startup MVP | production app | library | critical infrastructure] - **主要语言**: [语言] - **框架**: [框架] - **测试运行器**: [runner] - **覆盖率工具**: [tool] ## 覆盖率基线 - **语句覆盖率**: [X%] - **分支覆盖率**: [X%] - **函数覆盖率**: [X%] - **已覆盖 E2E 用户旅程数**: [N of M] - **测量日期**: [YYYY-MM-DD] ## 覆盖率目标 - **语句覆盖率**: [目标%] - **分支覆盖率**: [目标%] - **函数覆盖率**: [目标%] - **E2E 用户旅程数**: [目标数量] ## 已选测试模式 - [ ] [模式 1 —— 选用原因] - [ ] [模式 2 —— 选用原因] - [ ] [模式 3 —— 选用原因] ## 关键用户旅程(E2E) 1. [旅程 1 —— 例如:注册 → 入门引导 → 首次操作] 2. [旅程 2 —— 例如:登录 → 仪表盘 → 导出] 3. [旅程 3 —— 例如:结算 → 支付 → 确认] ## 待覆盖缺口与风险 - [未覆盖区域 1 —— 风险等级,缓解方案] - [未覆盖区域 2 —— 风险等级,缓解方案] ## 质量门禁状态 - [ ] 所有测试通过 - [ ] 覆盖率目标达成 - [ ] 关键用户旅程已由 E2E 测试覆盖 - [ ] 无未经说明的跳过测试 - [ ] 测试执行耗时在预算范围内 - [ ] CI 已强制执行覆盖率阈值
满足以下全部条件,方可标记测试工作完成:
| 门禁项 | 要求 | 原因 |
|---|---|---|
| 所有测试通过 | 零失败、零错误 | 不稳定测试(flaky tests)视为失败 |
| 覆盖率目标达成 | 语句、分支、函数覆盖率均达到项目类型对应阈值 | 未覆盖代码即未经验证代码 |
| 关键旅程全覆盖 | 每条关键用户旅程均有通过的 E2E 测试 | 收入与用户信任依赖这些流程 |
| 无无依据跳过 | 每个 skip、xit 或 xdescribe 均附带注释及关联 Issue 链接 |
跳过测试会迅速演变为永久缺口 |
| 执行耗时预算 | 单元测试 < 60 秒,E2E 测试 < 10 分钟 | 缓慢的测试套件会被开发者主动跳过 |
| 无测试污染 | 单独运行任一测试文件的结果,与运行完整套件一致 | 共享状态会掩盖真实失败 |
| Mock 使用合理 | 每个 Mock 均附带注释,说明为何不能使用真实实现 | 过度 Mock 会隐藏真实缺陷 |
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章