驳不需要测试人员的5个荒谬理由

发表于:2010-4-01 13:26

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:译者:whatcanhumdo(C    来源:51Testing软件测试网采编

  1992年,James Gleick是一个和有BUG的软件很有过节的人。Microsoft Word的新版本刚出来时候,Gleick作为科学作家认为它一无是处。他在纽约时报周日刊上发表了一篇很长的文章,辛辣的批评了Word团队对用户需求置之不理和发布满是BUG的产品。

  随后,Gleick是当地因特网服务商Panix的用户,他想要一个能自动排序和筛选邮件的功能。UNIX上需要使用procmail,这款软件非常晦涩难懂,它的界面即使是UNIX的中坚人员也承认很费解。

  不管怎么说,Gleick先生在procmail里不小心输错了一个命令,以至于他删除了他所有的邮件。盛怒之下,他决定要开办自己的网络公司。Uday Ivatury加盟了,他是一个创造了Pipeline的程序员,这对于当时来说有一点超前:它是一个款使用图形界面的商业网络程序。

  Pipeline有它自己的问题,当然。第一版没有使用任何纠错协议,因此它有时候会重复下载数据或者崩溃。就像所有的软件一样,它有BUG。我在1993年向Pipeline申请工作。在面试期间,我问Gleick先生关于他写的那片文章。“现在你处于防御这一端,”我问,“你是不是对创造一款优秀软件的困难程序有了新的理解?”

  Gleick是固执的人。他拒绝承认Pipeline有BUG。他拒绝承认它的Word一样糟糕。他告诉我:“总有一天,Joel,你也会讨厌微软。”我有一点震惊,他作为软件制造商多年的经验,而不仅仅是软件使用者,竟然没有让他理解制造一款没有BUG而且容易使用的软件是多么困难。因此我离开了,拒绝了工作邀请。(Pipeline被PSI收购了。PSI是世界上最奇怪的网络提供商,他收购了Pipeline之后就轻易关掉了它。)

  如见有BUG。CPU非常挑剔。它绝对拒绝处理任何没有明确说明的事情,而且它会以最孩子气的方式拒绝。当你的笔记本电脑离开家,它的经常崩溃因为它找不到它经常用的打印机。多么孩子气啊。它可能执行了某一行代码,代码中有一点微不足道的BUG。

  这就是需要QA部门的原因。你应该为两个程序员配备一个测试人员(如果软件需要在很多复杂配置和操作系统的环境下工作需要更多的测试人员)。每个程序员应该和测试人员紧密合作。

  QA部门应该独立且有一定的权利,它不能由开发团队管辖,实际上,QA对于任何没有通过检测而发布的软件有一票否决权。

  我的第一份软件工作是在微软;这家公司并不是以它的代码质量出名的,尽管如此它还是雇佣了大量的软件测试人员。因此我总是假设每个软件工序都有测试人员。

  大部分都有。但是还有很多没有测试人员。实际上,很多软件团队并不信任测试。

  你也许会想到80年代的质量狂热,出现了各种毫无意义的国际性的质量证书像ISO-9000和流行语“six-sigma”,今天的管理人员已经知道只有高质量的产品才能生意兴隆。大部分管理人员都知道这个道理。大事他们仍然有很多不要软件测试人员的理由,所有这些理由都是错误的。

  我希望我可以向你解释为什么这些想法是错误的。如果你赶时间,直接这篇文章剩下的部分,然后出去给团队中每两个程序员雇佣一个测试员。

  以下是我听过的不要测试员最常见的荒谬的理由:

  1、BUG来自懒惰的程序员:

  “如果我们雇佣了测试员,程序员就会变得懒惰,从而会写出有BUG的代码。没有测试员,就可以强迫程序员一开始就写出正确的代码。”

  如果你这么想,你要么从来没有写过代码,或者你没有诚实面对写代码是什么样子的。BUG,根据定义,是因为程序员没有注意到他们代码中有BUG才产生的。大部分时间只需要另外一对眼睛就能看到BUG。

  当我在Juno写代码的时候,我每次都用相同的方式执行我的代码。。。我有我自己的习惯,大量使用鼠标。我们非凡的高资历的测试员有不同的习惯:她大部分操作都用键盘(要严格测试界面需要使用每个可能的输入组合)。很快发现了大量的BUG。实际上,那次她告诉我界面没有反应,100%没有反应,即使我在用的时候有反应。当我看她的BUG报告时候,这是让我恍然大悟的时刻。Alt!你按住了Alt键!为什么我没有测试这个呢?

  2、我的软件是放网页上的。我可以在短时间修复BUG

  好的,确实是这样,通过网页发布修复后的版本比以前通过打包软件要快。但是即使是放在网站上,而其在项目已经结束之后,你不要低估修复BUG的费用。还有一件事情,你修复一个BUG可能会引入更多的BUG。但是更糟糕的事情是,如果你想要开发新版本,你就会发现修复原来版本的BUG会非常昂贵。为了避免这种事情,你会这么想:

  3、我的用户会为我测试软件

  啊,令人畏惧的“Netscape防卫”。这个可怜的公司因为它的“测试”方法论几乎消耗殆尽了它的名声:

  • 当程序员刚写了一半,就把没有经过测试的软件发布到网站上。
  • 当程序员说他们写完了,就把没有经过测试的软件发布到网站上。
  • 重复这两步六到七次
  • 把那些版本都叫做“最后版本”。
  • 每次发布。01, 。02, 。03版本的时候,把令人尴尬的BUG在网页上提一下。
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号