PS:本文首发于公众号「软件测试艺术」,回复“软件测试教程”获取:麦子学院、传智播客、小强软件测试全套学习教程!
测试的目标是尽可能早的找到系统中存在的缺陷并使它们得到修复。从测试的经济学角度来考虑,一个Bug发现的越早,修复成本和风险就越低,后期Bug的修复不仅增加沟通时间,还可能引入新的问题,增加测试验证时间,项目的进度也有延迟上线的风险。
题图来自网络从传统的软件开发过程不难知道,一个完整的项目大致会经历需求分析、开发编码、测试这三个重要的阶段。如果测试人员在最后的测试阶段才开始介入,与软件测试的目标背道而驰,项目需要花费更多的精力去修复Bug。
测试左移的思想就是测试人员提前介入项目,提前发现问题。这要求测试人员在需求分析阶段就必须参与到项目中。良好的开始是成功的一半,测试左移简单来说其实就是通过前期一系列的活动,缩短测试周期。如下是不同阶段测试人员应该关注的点。
项目需求阶段:
项目新增的需求主要实现了什么功能,一定要提前同产品、开发人员搞清楚,对需求做详尽的分析,发现不合理的需求,对模糊的需求理解清楚,为后续测试用例的设计做好铺垫;抓测试重点,对重点功能提前搭建测试环境和准备测试工具,设计测试方案;同时思考项目已有的功能是否可以自动化,提前开发测试脚本。
开发编码阶段:
在开发编码阶段,可以开展单元测试,接口测试,参与研发代码review,准备测试数据和完成其他辅助测试的测试方案。
在开发提测前:
可以开展冒烟测试,重点功能模块摸底测试,同开发、设计、产品相关人员一起review测试策略,确保测试覆盖度,保证测试质量。
并非所有的测试项都适合测试左移,如UI自动化测试需要等开发完成界面开发,因此UI自动化测试不具备测试左移;而接口测试就非常适合测试左移,接口文档有详细的接口逻辑、参数、和返回值的明确定义,没有必要等到接口开发完成才动手编写测试代码和准备测试数据,等接口开发完成就可以立即介入测试。
测试左移的一系列活动:
1、项目完善的测试流程
2、编写优秀的测试用例
3、制定合理的测试计划
4、合理的自动化测试方案
5、适当的探索性测试
6、开发自测流程
7、尽可能早参与测试
以上一系列的活动仅仅包括测试相关的活动,实际提高一个完整的项目质量不仅是测试部门的责任,更是产品、开发、质量等部门合作的结果,如下的一系列活动对保证系统的质量也发挥着巨大的价值:
1、完善的项目流程
2、合理的需求分析
3、详细的文档设计
4、出色系统架构和研发团队
5、规范的研发流程
以上是否对当前的测试工作有启发。
网友评论