注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

dp: 生活的脚步,进步的点滴...

Cam、DSP、FPGA、PM、Life、More ...

 
 
 

日志

 
 

开发与测试:分开还是独立?  

2014-01-23 16:05:42|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

Bill Hetzel是首届软件测试大会的组织者,他在《The Complete Guide to Software Testing》中定义了测试的6大原则。第6大原则(测试独立性)作为常见的主旋律贯穿了软件测试的历史。Glenford Meyers撰写了首本关于软件测试的书籍,书中强调了在软件可靠性中测试的独立性:测试应该由在某种程度上与程序和项目相分离的外部人员完成……系统测试应当由分开的质量保证部门等独立团体来完成。[Meyers76]

1972年在北卡罗来纳大学举行的“计算机程序测试方法研讨会”。

《The Art of Software Testing》。实际上,《Program Test Methods》[Hetzel73]是该领域发表的第一本书,但是该书是对一些文章的收集综合,所以经常被遗忘[GH88]。为什么这个独立性那么重要?下面是一些经常提到的理由:

编程是建设性的,然而测试是破坏性的,因此程序员不能进行测试。

如果程序员测试自己的代码,那么他们就会根据实现情况改变测试。

当测试是由同一个实现团体完成时,他们会为了达到期限而省略测试。

前两个理由假定存在单一专业团队而不是跨功能的团队。最后一个理由则提出一个权宜之计来解决开发人员在受到压力时走捷径而破坏质量的更大的问题。

在这些理由中,测试独立性相当于将测试与开发分离。但是,Hetzel阐明了原则:需要的是获得精神上的独立,而不一定非要团体中其他的个人进行测试。[Hetzel88](原文中的重点)《Agile Testing》一书重申了这一点,作者也指出了由于拆分测试而造成的次级优化:团队经常把“独立”与“分开”相混淆。如果汇报结构、预算、过程都被分配在离散的功能领域,那么对程序员和测试人员的划分是不可避免的。时间全被浪费在了重复的会议上,程序员和测试人员之间没有共享相同的目标,也根本不存在信息的共享。[CG09]

测试的独立性并不意味着单独的测试人员。

怎样获得测试工作精神上的独立而不将测试分离开来?那就要在实现代码之前编写测试。这样测试就不会受到实现的影响,因为实现还不存在。通过这个方法,测试驱动开发获得了测试工作精神上的独立却无需单独的测试部门。

  评论这张
 
阅读(414)| 评论(0)
推荐

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016