如何规划和实施一个成功的自动化测试任务,我们需要一个能够遵循的过程。这里我们引入PERAL(Purspose、Evaluation、Architecture、Run and Debug、Link with manual test)模型。
第一步Purspose(目标):如何建立一个务实明确的自动化测试目标?
1. 选择自动化还是手工测试
一般自动化测试引入条件:
项目没有严格的时间压力
具有良好定义的测试策略和测试计划(知道要测试什么,知道什么时候测试)
对于自动化测试你拥有一个能够被识别的测试框架和候选者
能够确保多个测试运行的构建策略
多平台环境需要被测试
拥有运行测试的硬件
拥有关注在自动化过程上的资源
被测试系统是可自动化测试的
如下条件适宜采用手工测试:
没有标准的测试过程
没有一个测试什么、什么时候测试的清晰的蓝图
在一个项目中,你是一个新人,并且还不是完全的理解方案的功能性和或者设计
你或者整个项目在时间的压力下
在团队中没有资源或者具有自动化测试技能的人·没有硬件
2. 正确估算分析自动化测试效益
引入自动化测试的目的在于降低测试成本,提高测试效率。而要确定在什么情况下自动化真正降低了测试成本则需要根据公式来进行估算。
手工与自动化测试的成本平衡点测试次数计算:成本平衡点测试次数=测试代码开发时间/(手工测试所需时间-自动化测试所需时间)
当测试迭代次数大于平衡点测试次数,自动化才能体现其真正的价值。
3. 正确选取自动化测试实施对象的范围
获得自动化测试最大的收益成本比是自动化测试的最终目的。选择哪部分测试案例进行自动化测试,应该以成本最小而受益最大的原则,因此,应具备以下两个特点:
(1)测试对象应该是被测试软件系统中比较稳定的功能模块,很少变化甚至最好不变,这样就能减少自动化测试的维护成本。
(2)测试案例应该是执行比较频繁的,这样转化为测试程序后,执行次数也是频繁的,会增大自动化测试的收益。
因此通常情况下,对于优先级较高,执行频率也搞的核心功能,应该被优先考虑进行自动化测试,而其他功能则可依然采取手工测试。