如果我说,测试是无法保障质量的,这话你信么?
所以,真正的测试左移就包含 2 个方面:
最近在思考一个问题,为什么我们的质量总是不好?
说到这个问题,想起来多年前看到过的一些观点和文章,其中有些是讲测试是无法保障质量的,讲真,我个人还蛮认同的。
当然这句话会让很多人难受,不认同,没关系,这正常,我们可以一起聊聊。
首先附上相关文章
- 2011 年,在 Google TestAutomation Conference(谷歌自动化测试大会上),Alberto Savoia 发表了《测试已死》
- 2012 年,陈浩发表文章《我们需要专职的 QA 吗》
文章大家可以私下空了再看看,我们不多描述,跟本文相关的,我们看看具体的例子。
例:如果我们的项目本身架构就很差,代码冗余,关联性强,数据和业务无法分离,试想这种时候你的测试会多被动。你会发现你在无休止的测试 - 回归测试 - 再测试 - 再回归测试。
是不是很难做好,当然,如果时间足够长,相信质量也能提升到不差的地步。但是,如果我们用不差来形容,就已经认可上文的结论了。
当质量的高度已经被限制的时候,质量角度能做的,也就是提高下限了。
那天和一个朋友交流,他说自动化最重要的作用,还是保证下限,我十分认可。本质上我们无法解决自动化的预言家问题,相信这点大家都没解决。
当然,诸如 monkey 之类的,能帮我们在固定的自动化实现场景中,找到其他问题,但是还是那句话,因为缺陷一开始就引入了。
说了这么多,不管认可不认可,我说下我认为的测试左移应该怎么做吧。还是 2 句话:
有哪些活动可以提高质量上限?
关于合理的需求分析,这点我引用一个小的脑筋急转弯:
请问:把大象放进冰箱需要几步?
答案:3 步
早几年网上看到一个人分析,说,3 步错了啊,明明是 2 步啊。因为如果你把大象装进冰箱,你并不需要关上冰箱的门。
真的是,说的对。这句话也恰好告诉我们,在做项目或者做产品的时候,有的时候我们要达到的效果就是刚刚好。
有哪些活动可以提高质量下限?
即:
提高质量上限其实是通过一系列活动,来避免问题或者本身就让我们起步就变得很好的,一句话:良好的开始是成功的一半。
而提高质量下限,其实是通过一系列的活动,让我们的质量成果得以保证的,自动化的最大作用也是尽快发现问题,减少重复劳动,不是么。。
测试左移,其实就是通过一系列的活动,能提高质量的上限,缩短测试的周期,提高质量的下限,这样子,我们就可以在不断提高下限的过程中,始终将质量稳定在一个水平线上,而和团队一起追求更高的目标了。