追踪每一个软件缺陷

发表于:2011-1-27 11:35

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

 作者:谢敏 戴金龙    来源:51Testing软件测试网采编

分享:

  下面笔者简单解释一下:缺陷状态标注了缺陷的待修正、待评审、待验证、关闭等状态信息;缺陷标题则简要地说明缺陷的类型及内容;缺陷严重程度是测试人员给出的缺陷严重程度估计,可以是致命的、严重的、一般的、建议的等; 缺陷紧急程度是测试人员给出的测试处理优先级;缺陷提交人是指发现此缺陷的测试人员,最好附有联系方式,以方便缺陷处理人员进行确认;缺陷所属指缺陷所在的模块或者是缺陷所属的开发文档的名称;缺陷解决人则是指由谁来进行缺陷的解决,明确是需求分析人员、设计人员还是程序编码人员;缺陷解决时间是项目组负责人返回的缺陷预计处理的时间;缺陷解决结果标明预计缺陷修改后能达到的结果;缺陷确认人是指由谁来确认缺陷已经得到了修正;缺陷确认时间是指缺陷修复的确认工作完成的时间;缺陷确认结果指确认软件缺陷的修正工作是否有效。

  以上列出的条目不是必须的,读者可以根据项目的实际情况进行实施软件跟踪管理技术对于企业而言,它的意义在于确保每个被发现的缺陷都能被解决。这里,解决可能是指缺陷被修正,也可能是指项目组成员达成一致的处理意见(如不做处理)。软件缺陷跟踪管理过程中所收集到的缺陷数据对评估软件系统的质量、测试人员的业绩、开发人员的业绩等提供了量化的参考指标,也为软件企业进行软件过程改进提供了必要的案例积累。另外,有些软件企业还根据缺陷跟踪管理过程中所获得的缺陷数目分布趋势来决定软件产品的最佳发布时机。

  剪裁。另外,要引起注意的是上述部分条目不是由测试人员来填写的,如缺陷解决时间、缺陷解决结果、缺陷处理人等,应该由项目管理人员统筹成本、进度等因素后决定。

  另外,对缺陷的描述还应该包含缺陷的详细描述,也就是要对缺陷的特征做出详细的描述,例如程序代码中的错误,应详细描述错误发生的软硬件环境,相关输入输出数据,出错时程序的状态等,以方便编码人员进行错误复现和错误定位。又如设计规格说明中的错误,则应指明它与高层软件开发文档(如需求规格说明)中哪些条款相违背,为什么判为违背,都需要描述清楚,以方便设计人员进一步核实。

  除此之外,对某些缺陷的描述应该包含必要的附件。有时,某些缺陷可能无法用语言文字表达清楚,如用户界面出现的一些缺陷。这时,就需要借助于屏幕拷贝等方式来进一步描述缺陷。

  缺陷跟踪管理的一般流程

  缺陷跟踪管理系统( Defect Tracking System)是用于集中管理软件测试过程中所发现缺陷的数据库程序。利用它便于查找和跟踪缺陷,因为对于大中型软件的测试过程而言,报告的缺陷总数可能会有成千上万个,如果没有缺陷跟踪管理系统的支持,要求查找某个错误,其难度和效率可想而知。另外,利用该系统还有利于项目组成员间协同工作,缺陷跟踪管理系统可以作为测试人员、开发人员、项目负责人、缺陷评审人员协同工作的平台,同时也能保证测试工作的有效性,避免测试人员重复报错,也便于及时掌握各缺陷的当前状态,进而完成对应状态的测试工作。最后它还有利于跟踪和监控错误的处理过程和方法,可以方便地检查处理方法是否正确,跟踪处理者的姓名和处理时间,作为工作量的统计和业绩考核的参考。

  其简单流程如图所示,该流程涉及测试人员、项目负责人、开发人员、评审员等角色,这些角色的描述以及职责如表所示。图中提到软件缺陷的几个状态有:初始状态、待分配状态、待修正状态、待验证状态、待评审状态以及最后的关闭状态。读者可以根据企业的实际情况,适当调整该流程以取得更高的效率。

  缺陷跟踪管理的实现原理

  软件缺陷跟踪管理系统可以通过添加、修改、排序、查寻、存储操作来管理软件缺陷。目前市场上已经出现了一些通用缺陷跟踪管理软件,这些软件在功能上各有特点,可以根据实际情况直接购买使用; 也可以根据测试项目的实际需要,开发专用的缺陷跟踪系统,例如基于Lotus Notes 开发。

  缺陷跟踪管理系统在实现技术层面上来看是一个数据库应用程序。它包括前台用户界面、后台缺陷数据库以及中间数据处理层。目前,不少缺陷跟踪管理系统是采用B/S结构来实现的,相应地,采用的编程语言是ASP或JSP。读者可以根据需要选择购买商品化的缺陷跟踪管理工具,或者选择自行研发软件缺陷跟踪管理工具。这类系统的用户界面所显示的信息一般应根据用户的角色不同而略有差异,因为各个角色使用该系统完成的任务各不相同。如测试人员用于报告缺陷或确认缺陷是否可以关闭;开发人员用于了解哪些缺陷需要他去处理以及缺陷经过处理后是否被关闭;而项目负责人需要及时了解当前有哪些新的缺陷,哪些必须及时修正等。另外,不同角色所拥有的数据操作权限也不尽相同。例如开发人员无权通过其用户界面往数据库中填写新的缺陷信息,也无权关闭某个已知缺陷; 而测试人员无权决定分配谁去修正某已知缺陷也无权决定是否要修正某个缺陷。

  缺陷跟踪管理系统后台数据库的设计建议尽量考虑到不同角色的应用需要,如测试人员可能需要对相关数据表做频繁的记录的插入、查询等操作,软件开发人员可能对与他相关的记录非常重视,而对其他记录不感兴趣,而项目负责人员可能对新发现的缺陷数据需要做到及时掌握,这些需求对于数据库的建表、建立索引都有很大的指导性意义。

22/2<12
精选软件测试好文,快来阅读吧~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号