您的位置:首页 > 其它

软件测试需要测试员吗? -- 测试是什么?

2007-06-03 11:28 316 查看
软件测试到底是什么?在没有搞清楚这个定义之前,不可能继续讨论有关是否需要测试员的问题。

很多进行开发工作和测试工作的人都说测试是保证软件质量的重要步骤,但是是否仔细思考过测试作为一个过程是如何影响软件质量的。

传统的开发组织在编码结束以后,就会进入测试阶段。测试员获取程序员的产品,以测试用例为导向运行程序,发现程序的故障,报告给程序员。然后程序员进行缺陷跟踪并解决之。这个过程里,测试员的角色是故障发现者,程序员的角色是缺陷解决者。用一个控制模型解释这个过程如下:

软件 = 系统
测试员 = 反馈提供者(反馈)
程序员 = 控制者

测试员在开发过程中的定位,正是由测试这种活动的本质决定的----测试是一个获取反馈的过程,观察程序运行的结果。观察得出的数据如何处理却由人来决定的。测试员会把故障数据提交给程序员,由程序员分析数据,发现导致故障的缺陷。能力较强的测试员也可以从数据分析出缺陷,并且指导程序员或者自己动手解决问题。但是这样的测试员是少数,并且培养这样的测试员成本很高,他在开发过程中发挥的作用却未必比一个有测试能力的程序员大。因为通常情况下程序员更了解软件实现的细节,由测试获得到的数据对程序员的意义更大,或者说更容易直接发挥作用。

基于这一点,有理由相信一个掌握了测试技术的程序员可以成为好的观察者和控制者,更好的把握开发的过程。一个由这种程序员组成的团队可以不需要测试员。这意味着团队规模的缩减,意味着团队运作成本的下降和效率的提升。

下面的文章,我将继续这个主题,思考如何培养这样的程序员,以及如何建立这样的团队。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: