避开自动化开发四大陷阱

我们在生活中会面临各种各样的陷阱。单就一个国家来说,就要面临“修昔底德陷阱”、“中等收入陷阱”、“塔西佗陷阱”这所谓的三大陷阱。陷阱,用通俗易懂的讲法,就是坑,或者雷。在自动化开发的过程中,往往会面临很多,而且这其中的许多,往往是我们自己不经意之间给未来的自己或他人留下的。如何在一开始就特意去避开这些坑,显得非常重要。

避开自动化开发四大陷阱

避开坑,你得先知道坑在哪里。本文对此做了一些梳理。

01 求全

我这里的求全,是指凡事必须自动化。尽管自动化有诸多好处,但必须知道自动化是锦上添花,是如虎添翼,业务和流程才是根基。任何追求测试效率的提升,首先要从流程上进行梳理。凡是通过优化流程就能解决的问题,绝对不通过自动化。很多团队的效率低下,并非是缺乏工具和手段,恰恰是出在流程的问题上。

业务的需求是多变的,而自动化是需要投入时间和人力的。没有稳定的流程,自动化将会成为流程的牺牲品,改来改去最终也无法解决团队的实际问题,最终无果而终。所以,优化流程先于自动化实现。

02 求快

很多人的编程能力很强,三两下就可以写出一个可以工作的脚本或者工具。越是这样的人,越是要避免把Coding干成一件体力活。快体现的是交付速度,却容易让人忽视交付质量。实现新功能是很容易的事情,但是如果不站在用户的角度,从需求和使用的角度进行自主思考,就不能做出完全满足甚至超越用户期待的产品。如果为了求快而不进行充分的测试,结果到头来一堆的bug,大家越用越没有信心,而你也会越维护越累,双方都很受伤。

创新的想法从0到1是很困难的,但是技术实现从0-1是很容易的,一下就能让需求方看到结果。但是从1到100是一个艰苦的过程。如果从1到100都是用户不断给你反馈让你+1,那么用户会逐渐也会失去耐心和信任,而你也会被它长期拖累,交付的拖尾线会非常长。

十天盖好一个房子也许很容易。但是要让盖好的房子在各种环境下都不倒塌,服务尽可能长的时间,又快又好才是我们追求的最终目标。

03 求多

现在的测试方法和手段是非常多的。检验一个团队的自动化水平,并不是说你的工具越多越好。一味地求多,往往只会捡了芝麻投了西瓜。十八般武艺看起来样样都能耍耍,但是却没有一项精通。

对于自动化来说,要物尽其用。用好一样武器,也能一招制敌。我们需要把最简单的东西挖掘到极致。多会导致维护成本高,容易用完即抛。

举个例子,Monkey测试是Android测试里面的入门工具,也是使用最为广泛的工具。很多人说起monkey都能知道是干嘛的,但是对于参数却说不清楚。如果你始终是使用默认配置进行运行,那么你可能并未充分运用好它。现在有很多Monkey工具的变种,都是对于Monkey测试的扩展。

多会让你无所适从。就像一个女生面对满屋子的鞋子,不知道穿哪一双好。总觉得穿在脚上的那双不是最好的,所以不停地买新鞋子。

有好东西你却没有好好利用,就是浪费。而浪费,就是犯罪。所以,一味求多,东西琳琅满目,但是却给人满满的杂货铺的既视感。多的前提是精。多而精,才是可持续发展的王道。

04 求新

对新技术的追求,当然是每个团队始终必须坚持的。但是,做事情还是需要从务实的角度考虑,并不能一味求新。我们的目标只是把事情给做成,至于怎么做,可以有多种选择。

如果有新方法来做,我们可以用新的。如果有即时可得的传统方法就可以做到,我们就用传统的方法。邓爷爷说过,白猫黑猫,抓住老鼠就是好猫。你不能因为一只猫抓老鼠的姿势好看就断定它一定就是一只好猫。

一个很实在的例子就是AI(人工智能)。AI一开始上来的时候,所有的公司一夜间都成了AI公司,所有的自动化工具仿佛都插上了AI的翅膀,大家乐此不彼,仿佛你没用AI都不好意思说。

AI固然能解决很多问题,比如图像识别、语音识别等等。但它可能不一定适用于你的场景。如果为了用AI而用AI,为了高大上而高大上,而不解决实际问题,那就会陷入花架子的陷阱。

同样地,用鞋子来比喻,外表光鲜的鞋子,可能不一定适合你的脚。而且你可能还会为其支付额外的价钱。

所以我们的口号是:能用简单方式解决的,绝不复杂化。

最后

本文虽然是从自动化的角度进行阐述,但是道理其实是普适的。求全、求快、求多、求新本来是好事。但是如果在每一个前面加上“一味”二字,就会物极必反,变成陷阱。一旦不小心陷入其中,你可能在将来某个时候就会为之前的行为还债。在我们的工作中,必须清醒地认识这些陷阱,并加以避免。

所以,你掉到坑里过吗?

源自公众号 测试之家



留言