自动化测试管理的期望值往往在设定上受到媒体、会议、厂商的大肆宣传、相关书籍上对自动化优点的宣扬。部分信息是准确的和可适用的,但是大部分信息是出现在某些特定的环境下,适用于某些特定的项目,并且被过分的强调了成功这个字眼。自动化测试不是一个银弹。它不能解决所有的测试方面的问题,需要进行小心细致的规划。不正确的期望会最终导致一个获得了收益的自动化测试变成了失败的案例。
例如:
1)所有的测试都要自动化。这是不切实际和可望不可即的。
2)从自动化测试获得立即的回报。某些自动化测试可能能看到立即的效果,例如Build测试,但通常情况下,回报总是在投入一段时期后才能看到。需要花费很多的时间和努力来创建大多数的自动化测试内容,而收效总是在一遍又一遍的测试运行之后才能获得。
3)零启动时间。将测试自动化是要花费时间的。要选择测试工具、搭建、安装,而规划和实现自动化测试则要花费数倍于手工测试的功夫。
4)自动化所有测试规划的内容。自动化测试工具无法做所有的事情。
5)使用录制/回放进行回归测试。这种情况仅适用于被测软件非常稳定,即将来只有极少的测试案例会发生改变。这种情况非常少。
6)自动缺陷报告(无需用户干预)。这通常会给测试的组织或开发带来很大的问题。包括判断是否与已有缺陷重复,错误的失效原因探测,一个错误引起多个测试的失效,无法重现的错误等等。
组织管理方面的影响包括设计自动化测试和执行自动化测试所需的技能、自动化测试工具、自动化测试环境。开发和维护自动化测试与手工测试之间是有很大的区别的。在建设自动化测试时,工作技能变了、测试方法变了,甚至测试本身也发生了变化。自动化测试还会对被测的产品、开发过程和发布过程产生潜在的影响。我们不得不仔细考虑和分析这些影响中的积极和消极的因素。
自动化测试若想成功,要从管理上设置合理的期望值,要正确地认识到将要从自动化测试中获得哪些益处。关键是要牢记自动化测试的目标是要在某些方面将测试做的更好。自动化测试仅仅是一个手段,借助这个手段来完成我们的任务—测试一个软件产品。在管理测试工作和向测试工作进行投入方面,成本/收益的分析向我们提供了非常有用的信息。
我们也要看到,不同的自动化测试实施行为将会带来好处,也会带来问题。例如,自动化测试将会减少测试所需的人力资源,从而节省运行测试过程中的人力耗费。但是,自动化测试也可能会产生各种各样的结果,需要耗费更多的人力进行分析,从而产生比手工测试更多的人力成本耗费。通常情况下,获得自动化测试的结果后,需要更长的时间去分析和隔离所发现的缺陷。
文章来源于领测软件测试网 https://www.ltesting.net/