关于测试和测试人员

系统
这些年来,我对测试工作、测试人员,以及整个软件质量管理体系形成了一些明确的观点。受一篇关于Facebook的测试的帖子的启发,我想把这些写下来,用以拿给人看。有些观点是有争议的。事实上,即使在交谈中稍微表现出这样的看法,都会招致人们的鄙视。

本文的作者Sriram Krishnan是一名程序员,曾在Yahoo和微软工作过,开发过很多软件,曾被纽约时报报道,写过一本书,本文是他的一篇博客。

这些年来,我对测试工作、测试人员,以及整个软件质量管理体系形成了一些明确的观点。受一篇关于Facebook的测试的帖子的启发,我想把这些写下来,用以拿给人看。有些观点是有争议的。事实上,即使在交谈中稍微表现出这样的看法,都会招致人们的鄙视。

 

[[58253]]

 

本文的作者Sriram Krishnan和他的妻子

大多数的开发团队并不需要一个独立的测试角色。即使有一个,他的所有的开发时间比上所有的测试时间应该 >20:1。证据吗?光看看一些从古至今最成功的软件开发团队就知道了。不论是当今的Facebook,还是30年前最初的NT团队,很多伟大的产品都是出自没有或很少测试人员的团队。

开发人员应该测试自己的代码。没什么可说的。背后的道理并不重要。这包括单元测试,全覆盖的自动化测试或手工测试或组合测试。如果你的开发人员不能/不愿意或认为这“不归我管”,那你需要更好的程序员。

我有一些政治上不正确的话要说。一些大型的软件开发公司会从一些不能胜任开发工作的程序员中选择测试人员。我经历/听说过很多在面试开发人员过程中有人说“他/她做开发不行。也许可以做测试?”这导致了一个被广泛默认,但很少公开宣称的认识:做测试的不如做开发的聪明。正是由于这普遍的偏见,少数一些对质量和测试工作极具热情和天赋的人受到了不公平的待遇。我知道他们,因为我曾经和一些这样的人一起工作过。

追求代码测试覆盖率是危险的。因为它很容易测量,它经常会变成真正目标的替代品——开发有质量的软件。如果你的开发团队把功夫都用在写愚蠢的测试,来覆盖每一个罕有能用到的代码路径——因为这些数据会出现在一些报告里——你有问题了。测试覆盖率只是我们用的的很多指标中的一个,你需要使用它,但并不是因为它以自然的数字呈现,它就能压倒其它指标。它成了古德哈特法则的牺牲品。

我也曾看到有些公司里有独立的测试人员,他们写出非常好的测试代码。不幸的是,这被人们当成了一种常识,即使是在根本不需要这样的时候。

正像测试覆盖率被过度使用,有些质量指标是被忽略轻视了。比如:过程中产生了多少技术支持邮件?自己是否在任何时候都在真正的使用自己的产品,检测里面的问题?分析从生产环境和客户安装那里产生的日志文件。所有的这些策略都在上面的Facebook的帖子里有提到过。

技术领导的一个常见的减少测试队伍的体积的办法是做自动化测试。这是个巨大的错误。如果你有一个用户直接接触的产品,你绝对需要用人眼去测试它。如果你和微软Windows团队的人坐下来一起和咖啡,你会听到他们抱怨过度依赖自动化测试导致了Windows Vista大量的bug。这个错误说明的问题就是:你需要一个全职的测试人员来使用你的产品。

【编辑推荐】

  1. Windows 8将和Windows Phone 8实现同步共享
  2. 微软宣布延长Windows Vista和Windows 7的生命周期
  3. Windows 8辅助功能多图曝光
责任编辑:Yeva 来源: linuxeden
相关推荐

2014-07-30 11:36:49

测试测试人员

2012-07-26 10:30:42

测试测试人员

2010-11-17 16:41:49

Bug软件测试

2016-09-09 01:14:17

2017-01-11 22:41:05

2011-09-09 16:23:16

Android Web测试

2010-06-07 17:46:46

Linux压力测试工具

2012-08-23 09:50:07

测试测试人员软件测试

2009-03-19 15:49:00

于涌软件测试软件性能测试与Load

2009-05-13 10:27:09

贺炘 前景 软件测试

2024-12-07 18:33:28

Testin云测

2023-05-12 15:07:40

测试开发

2019-08-22 09:05:34

2013-04-08 09:28:09

测试

2021-04-09 22:50:55

测试工具软件

2023-03-29 15:03:56

测试开发Web 应用程序

2018-12-27 11:25:19

人工智能机器学习无人驾驶

2010-06-07 15:17:48

Linux下dhcp测

2010-06-11 11:20:18

Linux性能测试工具

2023-09-07 10:26:50

接口测试自动化测试
点赞
收藏

51CTO技术栈公众号