1.1.2 严格的自动化测试流程
1.1.2.1 影响自动化测试成功与否的关键因素是流程
作者通过多年的自动化测试实战经验认为,必须将整个自动化测试过程看成一个软件开发项目的过程,因为测试脚本是由代码组成的,而测试代码又是自动化测试的根本。有效地开发并维护良好的测试脚本,是自动化测试过程的重中之重。但是,想要行之有效地管理好这些测试脚本并不是容易的事情,就像管理好项目代码一样!所以,自动化测试过程就是一个软件开发的过程,需要经历各类分析、测试计划、框架及测试用例设计、脚本开发、测试执行、提交报告、脚本维护、版本控制等一系列繁琐的过程。图1-1所示是作者经过的一些成功项目自动化测试后总结并描绘的一张自动化测试流程图。
图1-1
接下来,根据“图1-1”逐一讲解每一个关键过程(阶段),让读者明确自动化测试流程及其中的一些细节。
1.合理的自动化测试切入点
通常,项目只有在经历了完整的系统测试后才算具备了基本的引入测试自动化的条件。于是,一般也就在这个时间段,项目经理与测试经理才会以此定为自动化测试开始筹划与准备的时间点。到目前为止,绝大部分的公司都以系统测试完成为标准来作为自动化测试的切入点,因为在之前的任何阶段中都不是非常适合做自动化测试。
2.测试自动化分析
在具备了可自动化测试的基本条件后,仍然需要默认自动化测试工作展开的难度之大!我们必须通过各种分析来确定是不是要继续将测试自动化做下去。根据作者在完成了多个自动化测试项目后总结出的经验(有成功的经验、同样也有失败的经验),我们在做测试自动化分析时最该做的就是以下3种。
(1)可行性分析。
在进行项目自动化测试之前,第一步就是要确认其可行性,是否可以实行测试自动化。作者认为,在常见的不可行因素下,如果出现其中任何一种,自动化测试工作都是不应该展开的,项目常见不可行因素如下。
● 项目时间紧迫。如果项目进度很紧迫,开发周期的时间表很紧,每次交付间隔时间很短,你就没有时间进行测试自动化,也就不要考虑自动化测试了。