赞
踩
记得很早之前的一件事:一起合作的一名手工测试转向自动化测试,一个不错的转变,新的领域和开始。
过了段时间再次相遇聊到,却有了一些无耐和迷茫:做的自动化要求全部通过,问之原因是因为要求给客户看到一切正常的表现;每天在编码,只是在定位元素,最初设想的从底层的测试提升质量却基本耗在了界面层上验证,怀疑为什么要实现软件测试的自动化,投入了那么多时间、花了那么多钱却看不到效果。
我只是笑笑说:自动化,这是个方向,一个趋势,一个理想,一个前进的动力。也许有些做样子,同样也许应该看看他所带来的益处。做的不好、做的不深入不是自动化本身的错,真正的原因还在于人。
其实在我心中,也是苦笑,也存在着同样的疑惑和迷茫。
再聊自动化测试:目的 和 成本。
目的。
自动化测试的目的是什么?
自动化测试仍是测试,测试的目的是尽可能早的、尽可能多的发现问题,提升软件质量是测试工作存在和执行的根本原因。
尽可能早、尽可能多,这是个效率问题。如何平衡手工和自动化?如何让彼此产生最大效应?这不仅是技术的问题,还包括过程实施、方法的介入、配合等多方面的问题,需要不断的摸索。
手工测试的优势是什么、劣势是什么?人的主观能动性高,执行效率低,发现缺陷的效率高。
自动化测试的优势是什么、劣势是什么?执行效率高,只是生硬的执行而不能主动发现缺陷。
也许把那些重复的、确认的、不做大的变动的功能交给自动化来做,比如维护阶段;把新的功能的验证、更多的与人相关实际业务验证交给手工。把更多早期的方法、功能验证用自动化实现,重复执行减少底层实现的错误率,也许AI的发展可以把人为参与的探索性测试更多的用自动化实现,也许。。。。。。一切都有待验证。
如论怎样,让自动化参与进来,让测试的效率提升起来,让软件的质量提高起来。
成本。
软件最大的成本是人力,如论是手工测试还是自动化测试。与手工测试相比,自动化测试的成本更多了代码的实现和维护。
对于自动化成本更多的疑虑是这些投入是否得到了真正的回报,也就是投入产出是否成比例。
很遗憾,目前我还没看到我想要的自动化所能带来的真正效果。更多的理解和安慰是自动化解决了成熟的系统在维护阶段的人力成本投入,还有就是自动化在性能、容量、安全等方面所产生的作用。
真正长期投入到自动测试的仍是些大公司、产品型的软件。小公司也会有自动化测试,但更多的是使用成型的工具对基本的功能进行验证,对软件质量是否有所提升已经很难评判,不过一份自动化报告的确会让关心软件质理的软件开发者有一丝安慰,会让软件使用客户有一份心安。
投入、产出是否失调?如何让投入产生真正的效用,产生更大的效果?做手工测试的时候在考虑,做自动化测试的时候在疑惑,做项目管理的时候在实践。
改变仍需要时间的验证。
无论目的和成本如何不尽人意,自动化测试仍将继续,希望自动化测试真正的能做到实处,真正的让手工与自动化联合起来,让测试与开发中的各个阶段互动起来,需要做的仍然很多。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。