关闭

软件测试的定位

发表于:2012-12-29 13:55

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

 作者:willyenillye    来源:51Testing软件测试论坛

  其实这些话并非官方定义,而是我这些年来的经验总结,之所以发在这里,实在是因为找不到更好的板块,有些东西还是希望从新手阶段就认清楚,对以后的发展会有好处。

  警告:以下内容有可能引起各位思维混乱,务必当作学术研究,头脑风暴,而不可当作金科玉律,否则死了不管埋。

  测试人员经常会遇到这样的问题,尤其是在面试的时候:

  软件测试的目的是什么?为什么要有软件测试?

  我刚刚参加测试工作的时候就被问到这个问题,当时的回答是不知道,哈哈。

  另一个让人很尴尬的问题是:当软件出了问题,经常会有人说,你们做测试的是干什么吃的?

  本文力图让你明白,你没那么伟大,也没那么全能,我们都只是测试员而已。

  去年跳槽,被一个测试经理面试,她先问的不是这个问题,而是:你如何保证产品质量?

  我当时就头大了,本着负责的态度,只能从头讲起,从软件的本质,到软件生命周期,到开发模式,到各个阶段的质量保证,测试被抽象成一个小步骤。我讲完了,小姑娘听蒙了。

  然后她继续按照模板问下一个问题,直到她问,软件测试的目的是什么?

  我想了想,试着说帮助开发组提高产品质量?她说对啊,你如果早说不就明白了?

  于是我也明白了,我和她对软件测试的认识根本不一样,以至于她认为很简单的一个问题,对于我来说非常的复杂。

  很冗长的前言,但是很重要,这体现了通常对软件测试的认识与我的认识有多大的差别。

  软件测试是什么?软件测试是质量保证体系的一部分。CMMI中对产品质量保证工作有两个过程,验证和确认,简称V&V。二者非常类似,在其实践和子实践中,使用两种方法,一个叫做软件测试,另一个叫做同行评审。

  在瀑布式模型中,软件生命周期分为需求,设计,开发,测试,部署五大阶段。

  于是你明白歧义在哪儿了,有两个软件测试,一个是测试组实施的软件测试活动,另一个是作为项目的一个阶段由整个项目组一起实施的软件测试。

  这两个软件测试的目的截然不同,而正是由于这种模棱两可,致使很多人误解了软件测试。

  好吧,分析也够冗长的。如果你足够耐心,我们可以继续往下写:

  整个项目组一起实施的这个测试阶段,其目的就是保证产品质量符合需求规格和行业规格。这个过程是通过不断提高产品质量实现的,其中包括BUG修复,代码重构,调试,测试,评审,试运行等等。所以当初我遇到的那个让我尴尬的问题,提问者预设的答案就在这里。

  可是还记的那个问题是什么么?“你如何保证产品质量?”

  质量保证啊,在CMMI里我只能给她讲V&V的过程,贯穿项目始终啊,从投标阶段就开始的技术委员会评审,到上线后商业beta,哪能光靠一个小小的测试阶段啊?(还好明确了产品质量,否则连过程质量都讲,那他么就得面试个两三天)

  而软件测试,不过是质量保证体系与生产体系的一个小小的交集,将这么大的任务交给测试组,俺们肩膀稚嫩,担当不起啊。

  上面说了软件测试阶段的目的,那么,软件测试的目的是什么?

  很多软件测试的书籍里都会谈到这个问题,标准答案出现在很多公司的面试题里:

  为了找BUG

21/212>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号