如何对中途接手的项目开展有效的测试

发表于:2011-1-21 14:00

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

 作者:郑文强    来源:51Testing软件测试网采编

  随着我国软件开发和测试能力的提高,以及人力成本相对低廉,越来越多的跨国企业在中国设立了研发中心,从而将部分项目从国外转移到中国的研发中心。这时候,摆在测试团队面前的,将是如何在已有项目的基础上进行有效的测试,即如何对中途接手项目开展有效的测试。

  对于测试团队而言,测试中途接手的项目和产品,存在很多的风险和挑战。本文首先从测试的角度阐述中途接手项目测试可能存在的风险和挑战;然后根据笔者的经验和知识,提出测试方面的建议,以帮助测试人员更好的开展此类条件下的测试活动。

  1)风险和挑战

  (1)项目测试经验欠缺

  对于中途接手的项目,测试团队首先面临的一个挑战是缺少当前项目的测试经验,至少是不熟悉项目,例如:系统的整体设计架构、实现的主要功能、客户的关注重点、系统的测试平台、系统使用的测试工具、系统配置和管理的命令、系统中主要的缺陷分布等。项目中这些信息和知识,都需要测试团队花费很多的时间进行学习和理解。测试团队中尽管有的成员可能对系统功能有些经验和知识储备,但是对于该项目而言,测试经验方面肯定是欠缺的,或者是缺乏经验的。

  (2)开发测试文档不全

  中途接手的项目,测试团队面临的第二个问题是:原有的需求文档和测试文档可能不全,甚至没有,例如:由于软件开发的成熟度低下,或者由于项目移交的时候没有将相关的文档成功交接。而后续的测试工作需要详细了解以前项目版本的需求和相关的测试文档,从而可以深入学习和理解以前项目的基本功能。

  对开发团队而言,没有原始的需求文档也是一个非常大的挑战。首先,开发人员只能通过研究软件的代码来理解系统的功能和实现。而对系统各种可能的数据输入都进行研究是不现实的,并且也很容易遗漏一些复杂的功能实现。其次,开发人员在面对特定输入情况下系统产生令人迷惑的输出,开发人员可能会想当然的认为系统就是这样实现的。令情况更糟的是,开发人员在确定系统正确的输出和工作方式过程中,并没有进行相应的文档化,而是在这基础上直接进行代码设计,导致这种猜测循环经常持续,从而使需求的收集和文档化更加困难。

  而对于测试团队来说,同样面临严峻的挑战。虽然从表面上看,在已有系统上进行测试,测试人员可以通过比较以前软件的输出和新的软件输出结果进行对比。但是,基于不同版本输出结果进行判断并不总是安全的,例如:原来系统的输出就是错误的。基于这样的判断,测试人员就会遗漏系统中的一些缺陷。或者,原来系统实现的功能是不正确的,而在新的系统中,由于增加或升级了软件修改了原来代码的缺陷,其输出是正确的。基于两者之间的比较,测试人员会认为新的系统由于代码的修改引入了缺陷,而提交了不应该提交的缺陷报告。假如开发人员修改了本来是正确的代码,新的软件中又引入了新的缺陷。原本应该在需求阶段确定的预期结果的判断,落到了测试人员头上。

  (3)不稳定的测试对象

  在很多时候,项目在移交之前可能已经交付给客户使用了,后续的开发和测试会在用户版本的基础之上进行一些维护工作,例如:新功能的添加、缺陷的修改、系统架构的更改、新技术代替老技术等。在这种情形下,整个系统看起来更象是移动的不稳定的实体,这样导致的结果是新的系统一直处于多种开发状态的混合体,它们会经历不同的生命周期阶段,是个不稳定的测试对象。

  (4)测试工作量的估算

  由于中途接手的项目经常处于不稳定的状态,导致测试工作量、测试进度、测试人员和资源的估算更加困难。测试工作量的估算只能是基于对系统功能的粗略理解,而所谓的系统功能甚至可能是错误的,或者系统在维护过程中功能经常发生变更。对于测试估算而言,即使有详细的需求文档的情况下,也是一件非常困难的事情。因此,对中途接手的项目,由于其不稳定的特点,进行测试工作量的估算,将是难上加难的事情。

  (5)回归测试用例选择

  对于中途接手的项目,后续的开发和测试是基于前面的软件版本而展开的。针对开发活动而言,后续的开发主要是指软件版本新功能的增加、版本的升级、平台的升级,以及前面版本中遗留的缺陷的修改等。而对于测试活动而言,后续的活动主要是验证新增功能是否符合系统的要求、确认是否满足客户的要求、确定缺陷是否已经修复以及新增加的功能和缺陷修复没有在原来系统中引入新的缺陷。因此,对于中途接手的项目,测试团队的很多测试工作将关注在由于软件变更而进行的回归测试。

  在中途接手的项目中,回归测试在整个测试活动中会占有很大的比重。因此如何选择每次测试的回归测试用例,对于测试团队而言,也是一个很大的挑战。由于前面提到的测试项目经验欠缺和开发测试文档的不全,导致测试团队很难进行测试风险的估算,从而很难确定回归测试的重点和优先级,影响回归测试用例的选择。

  (6)项目知识的转移

  中途接手的项目,还有一个很大的挑战是项目相关知识的转移,例如:系统、开发和测试相关知识的转移。项目是从一个研发中心转移到另外一个研发中心,由于语言、文化和习惯的差异,在知识转移过程中,很难实现无缝的转移。由于测试团队中本身对项目的测试经验的不足,导致相关知识交流方面会更加困难。

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

精彩评论

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号