如果我说,测试是无法保障质量的,这话你信么?

所以,真正的测试左移就包含 2 个方面:

  1. 提高质量上限
  2. 提高质量下限

最近在思考一个问题,为什么我们的质量总是不好?

说到这个问题,想起来多年前看到过的一些观点和文章,其中有些是讲测试是无法保障质量的,讲真,我个人还蛮认同的。

当然这句话会让很多人难受,不认同,没关系,这正常,我们可以一起聊聊。

首先附上相关文章

  1. 2011 年,在 Google TestAutomation Conference(谷歌自动化测试大会上),Alberto Savoia 发表了《测试已死》
  2. 2012 年,陈浩发表文章《我们需要专职的 QA 吗》

文章大家可以私下空了再看看,我们不多描述,跟本文相关的,我们看看具体的例子。

例:如果我们的项目本身架构就很差,代码冗余,关联性强,数据和业务无法分离,试想这种时候你的测试会多被动。你会发现你在无休止的测试 - 回归测试 - 再测试 - 再回归测试。

是不是很难做好,当然,如果时间足够长,相信质量也能提升到不差的地步。但是,如果我们用不差来形容,就已经认可上文的结论了。

当质量的高度已经被限制的时候,质量角度能做的,也就是提高下限了。

那天和一个朋友交流,他说自动化最重要的作用,还是保证下限,我十分认可。本质上我们无法解决自动化的预言家问题,相信这点大家都没解决。

当然,诸如 monkey 之类的,能帮我们在固定的自动化实现场景中,找到其他问题,但是还是那句话,因为缺陷一开始就引入了。

说了这么多,不管认可不认可,我说下我认为的测试左移应该怎么做吧。还是 2 句话:

  1. 提高质量上限
  2. 提高质量下限

有哪些活动可以提高质量上限?

  1. 健康的项目流程
  2. 合理的需求分析
  3. 出色的系统架构
  4. 出色的研发团队
  5. 充分利用静态代码扫描
  6. 人工适时的 Code Review
  7. 进行研发标准的定义

关于合理的需求分析,这点我引用一个小的脑筋急转弯:

请问:把大象放进冰箱需要几步?

答案:3 步

早几年网上看到一个人分析,说,3 步错了啊,明明是 2 步啊。因为如果你把大象装进冰箱,你并不需要关上冰箱的门。

真的是,说的对。这句话也恰好告诉我们,在做项目或者做产品的时候,有的时候我们要达到的效果就是刚刚好。

有哪些活动可以提高质量下限?

  1. 健康的测试流程
  2. 优秀的测试用例
  3. 合理的测试计划
  4. 合适的自动化
  5. 适当的探索式测试(何为适当,因为大部分公司的探索式测试,都是在浪费时间,你并不会做探索式测试)
  6. UT
  7. 开发自测
  8. 尽早的测试

即:

提高质量上限其实是通过一系列活动,来避免问题或者本身就让我们起步就变得很好的,一句话:良好的开始是成功的一半。

提高质量下限,其实是通过一系列的活动,让我们的质量成果得以保证的,自动化的最大作用也是尽快发现问题,减少重复劳动,不是么。。

测试左移,其实就是通过一系列的活动,能提高质量的上限,缩短测试的周期,提高质量的下限,这样子,我们就可以在不断提高下限的过程中,始终将质量稳定在一个水平线上,而和团队一起追求更高的目标了。


↙↙↙阅读原文可查看相关链接,并与作者交流