一、什么是测试左移
测试左移是将测试工作在开发提测前进行相关活动,通常情况下,测试在需求、设计、冒烟阶段介入,以此提高研发效能,以下是各个阶段测试左移需关注的点:
timeline
title 测试左移各阶段相关活动
需求设计阶段 : 测试左移(需求、功能等)
开发阶段: 测试左移(业务、数据库等)
: 测试左移(提测前冒烟前置)
测试阶段: 测试执行
运维阶段: 测试右移
需求阶段(QA)
- 需求:需求的必要性(没有这个需求会怎样),成本(开发投入成本和需求产出比是否合理)
- 功能上:需求是否考虑全面,是否有遗漏
- 兼容性:是否兼容历史逻辑
- 成本上:涉及钱的模块,是否节约成本
- 体验性:用户体验,交互是否太复杂不够直观
- 安全性:是否有权限控制、是否合规
开发设计阶段:
- 业务:业务之间是否解藕,是否有降级逻辑
- 是否建立可拓展的业务模型,兼容后续业务发展
- 接口:老接口的改动是否兼容历史逻辑;是否幂等
- 数据库:字段大小是否合理,设计是否存在功能缺陷
- job:job 执行时间是否合理,job 间隔时间是否合理
- 日志:日志输出是否合理,日志是否太多、是否易于排查问题
提测阶段:
冒烟、回归自动化左移:开发进行单元测试后,自行使用测试开发好的脚本进行测试:
- 主流程进行冒烟
- 新功能进行冒烟
- 代码扫描:静态代码扫描
二、为什么要进行测试左移
在企业进行降本增效时,一般会对整个交付流程进行拆解与整合,降低每个环节的成本,从而实现营收最大化,而测试作为系统上线的最后一个环节,往往会进行左移、右移,以此达到提质增效的目的,而将测试左移是大多数企业的做法,通过对系统进行分析,将部分测试工作进行前置,可以达到事半功倍的效果。以下三点是测试左移关注的三个度量指标:
- 提高提测质量
- 研发效能提升
- 降低bug修复成本
三、测试左移怎么做?
1. 可行性分析
当前企业的研发体系是否能够支撑测试左移作业,最关键的是deveops效能平台、测试平台。一体化的工具平台是左移开展的必要条件。
2. 实施范围
选取能够进行测试左移的系统范围,并不是所有的系统能够进行左移作业,往往需要综合考虑系统发版、业务复杂度、架构耦合度等指标
3. 实施计划
实施计划分为两个阶段,试点阶段,推广阶段
试点阶段:选取代表性的系统进行试点,总结问题
推广阶段:按照试点阶段总结的方法步骤进行推广
4. 实施过程
测试左移的开展需要项目经理、需求、开发、测试多方参与,每个参与的职责需要明确。
5. 实施效果
对实施左移的系统进行效能度量,左移前与左移后的质量效率是否得到提升