name: 自动化策略 description: 规划测试自动化策略,包括投资回报率分析、自动化候选选择、框架评估和维护性自动化架构。 allowed-tools: 读, 写, 全局, 搜索, 任务, 网络搜索, 网络获取
测试自动化策略
何时使用此技能
使用此技能时:
- 自动化策略任务 - 规划测试自动化策略
- 规划或设计 - 需要投资回报率分析、候选选择、框架评估的指导
- 最佳实践 - 希望遵循已建立的模式和标准
概述
一个良好规划的测试自动化策略通过自动化正确的测试在正确的层次上最大化投资回报率。糟糕的自动化选择会导致维护负担、不稳定测试和浪费精力。
自动化象限
高业务价值
│
┌──────────────────┼──────────────────┐
│ 优先自动化 │ 谨慎自动化 │
│ (高投资回报率) │ (谨慎投资回报率) │
│ │ │
低 ├──────────────────┼──────────────────┤ 高
努力 │ 自动化 │ 考虑手动 │ 努力
│ (低努力) │ (低投资回报率) │
│ │ │
└──────────────────┼──────────────────┘
低业务价值
选择标准矩阵
| 标准 | 权重 | 评分 (1-5) |
|---|---|---|
| 执行频率 | 25% | 5 = 每日, 1 = 每季度 |
| 业务关键性 | 25% | 5 = 收入关键, 1 = 很少使用 |
| 稳定性 (低变化) | 20% | 5 = 从不变化, 1 = 每周 |
| 自动化复杂度 | 15% | 5 = 简单, 1 = 非常复杂 |
| 数据可用性 | 15% | 5 = 静态, 1 = 不可用 |
决策: 评分 ≥ 4.0: 优先 | 3.0-3.9: 推迟 | < 3.0: 保持手动
好 vs 差的自动化候选
| 好的候选 | 差的候选 |
|---|---|
| 冒烟/健全测试 | 探索性测试 |
| 回归测试 | 可用性测试 |
| 数据驱动测试 | 一次性测试 |
| API 合约测试 | 快速变化的功能 |
| 性能基线 | 视觉设计验证 |
| 安全扫描 | 很少执行的边缘情况 |
投资回报率快速估算
| 因素 | 乘以手动时间 |
|---|---|
| 简单UI自动化 | 3-5倍 |
| 复杂UI自动化 | 8-15倍 |
| API自动化 | 1-2倍 |
| 数据库自动化 | 2-3倍 |
| 性能测试 | 5-10倍 |
示例: 30分钟手动 × 1.5 = 45分钟API自动化。 52周运行 = 节省26小时。 投资回报率 = 3,367%
避免的反模式
| 反模式 | 问题 | 解决方案 |
|---|---|---|
| 睡眠/等待硬编码 | 不稳定, 慢 | 使用显式等待 |
| 使用XPath而非data-testid | 脆弱 | 使用稳定选择器 |
| 测试相互依赖 | 顺序相关失败 | 隔离测试设置 |
| 共享可变状态 | 竞争条件 | 每个测试使用新状态 |
| 过多端到端测试 | 流水线慢 | 推向下层金字塔 |
维护指标
| 指标 | 健康 | 警告 | 严重 |
|---|---|---|---|
| 通过率 | > 98% | 95-98% | < 95% |
| 不稳定测试率 | < 2% | 2-5% | > 5% |
| 平均执行时间 | < 10分钟 | 10-30分钟 | > 30分钟 |
| 维护小时/周 | < 4小时 | 4-8小时 | > 8小时 |
参考资料
| 参考资料 | 内容 | 何时加载 |
|---|---|---|
| automation-strategy-template.md | 完整策略模板、框架选择、路线图 | 创建自动化策略时 |
| automation-patterns.md | 页面对象模型、流式构建器、测试夹具 | 实现.NET Playwright测试时 |
集成点
输入来自:
test-strategy-planning技能 → 总体策略test-pyramid-design技能 → 金字塔比率- 需求 → 覆盖目标
输出到:
- CI/CD流水线 → 自动化集成
- 团队培训 → 框架使用
test-case-design技能 → 可自动化测试设计
测试场景
场景1:规划自动化策略
查询: “帮助我为我们电子商务平台规划测试自动化策略”
预期: 技能激活,提供策略模板,指导评估
场景2:评估自动化候选
查询: “我应该自动化这个结账流程测试吗?”
预期: 技能激活,提供选择标准矩阵,帮助计算投资回报率
场景3:实现模式
查询: “展示Playwright中的页面对象模型模式”
预期: 技能激活,加载automation-patterns.md参考资料,提供代码示例
最后更新: 2025-12-28
版本历史
- v1.1.0 (2025-12-28): 重构为渐进式披露 - 提取模板/模式到references/
- v1.0.0 (2025-12-26): 初始发布