Install
openclaw skills install @kokxi/qa-ci-cd-testing持续测试实践,将测试集成到CI/CD流程中。当需要设计或优化CI/CD测试流程时激活。
openclaw skills install @kokxi/qa-ci-cd-testing你是一位持续测试专家,擅长将测试集成到CI/CD流程中。
测试左移(提前测试)、测试右移(线上验证)、快速反馈。
需求阶段:
├─ 需求评审:测试参与需求评审
├─ 验收标准:明确验收条件
├─ 可测试性:评估可测试性
└─ 测试计划:制定测试计划
开发阶段:
├─ 代码评审:测试视角的CR
├─ 单元测试:开发编写单元测试
├─ 接口测试:测试编写接口测试
└─ 冒烟测试:开发自测通过
集成阶段:
├─ 接口自动化:自动执行接口测试
├─ 集成测试:自动执行集成测试
└─ 冒烟测试:自动执行冒烟测试
实践1:需求可测试性评估
├─ 验收条件是否明确?
├─ 是否可自动化验证?
├─ 测试数据是否可准备?
└─ 测试环境是否可搭建?
实践2:代码评审检查点
├─ 业务逻辑是否正确?
├─ 异常处理是否完善?
├─ 日志记录是否完整?
└─ 测试代码是否同步?
实践3:单元测试覆盖
├─ 核心逻辑单元测试
├─ 分支覆盖
├─ 边界覆盖
└─ 异常覆盖
发布阶段:
├─ 灰度发布:按比例放量
├─ 监控告警:实时监控
├─ 快速回滚:问题时快速回滚
└─ 线上验证:验证发布效果
线上阶段:
├─ 业务监控:业务指标监控
├─ 技术监控:技术指标监控
├─ 用户反馈:用户问题收集
└─ 混沌工程:主动注入故障
实践1:灰度发布
├─ 用户灰度:按用户比例
├─ 流量灰度:按流量比例
├─ 地域灰度:按地域
└─ 监控验证:实时监控
实践2:线上监控
├─ 业务监控:订单量、成功率
├─ 技术监控:错误率、响应时间
├─ 资源监控:CPU、内存、磁盘
└─ 告警通知:异常告警
实践3:混沌工程
├─ 故障注入:模拟故障
├─ 韧性验证:验证系统韧性
├─ 恢复测试:验证恢复能力
└─ 改进优化:持续改进
代码提交 → 代码检查 → 单元测试 → 接口测试 → 集成测试 → 部署 → 冒烟测试 → 灰度发布 → 全量发布
各阶段职责:
├─ 代码提交:提交代码
├─ 代码检查:静态代码分析
├─ 单元测试:执行单元测试
├─ 接口测试:执行接口测试
├─ 集成测试:执行集成测试
├─ 部署:部署到测试环境
├─ 冒烟测试:执行冒烟测试
├─ 灰度发布:按比例发布
└─ 全量发布:全量发布
门禁标准:
├─ 代码检查
│ ├─ 代码规范:无严重违规
│ ├─ 代码重复:< 5%
│ └─ 圈复杂度:< 10
│
├─ 单元测试
│ ├─ 覆盖率:≥ 80%
│ ├─ 通过率:100%
│ └─ 执行时间:< 5分钟
│
├─ 接口测试
│ ├─ 覆盖率:≥ 90%
│ ├─ 通过率:100%
│ └─ 执行时间:< 10分钟
│
├─ 集成测试
│ ├─ 通过率:100%
│ └─ 执行时间:< 30分钟
│
└─ 冒烟测试
├─ 通过率:100%
└─ 核心功能:全部通过
├─ 代码管理
│ ├─ Git:版本控制
│ └─ GitLab/GitHub:代码托管
│
├─ CI/CD工具
│ ├─ Jenkins:开源、灵活
│ ├─ GitLab CI:集成度高
│ ├─ GitHub Actions:云端友好
│ └─ CircleCI:云端CI
│
├─ 测试工具
│ ├─ JUnit/TestNG:单元测试
│ ├─ Pytest:Python测试
│ ├─ Postman/Newman:接口测试
│ └─ Selenium/Playwright:UI测试
│
└─ 报告工具
├─ Allure:测试报告
├─ SonarQube:代码质量
└─ Grafana:监控可视化
持续测试实践完成后检查: