(二)Bug不能重现的原因分析及其对策

上一篇 / 下一篇  2007-07-24 00:37:14

  • 文件版本: V1.0
  • 开发商: 本站原创
  • 文件来源: 本地
  • 界面语言: 简体中文
  • 授权方式: 免费
  • 运行平台: Win9X/Win2000/WinXP

(二)Bug不能重现的原因分析及其对策

                        

                                                    图3:“高级”选项的设置

 

        说明:在“高级”选项中,对测试起重要作用的是“禁止脚步调试”(不选择,即前面不要有勾)和“显示每个脚本错误的通知”(选择它,即前面要出现勾)。

        这些设置对重现有关脚本错误的Bug起着重要的作用。根据这些脚本错误的通知,开发人员可以快速发现代码中的错误,并及时修复它。

三、    内存泄露

        某些系统长期运行后出现运行速度慢、反应迟钝等现象,其中一个主要的原因就是内存泄露。有的开发人员没有养成及时回收内存的习惯,结果系统在不断地申请内存空间,却没有一点内存释放。这类错误在短期内不会出现,但当系统长期运行时就会出现,并且由此会引发一系列的问题。此类问题只有经过长时间的运行测试,才可能会被发现。

四、    函数接口类型不匹配

        此类错误难以重现,并且难以发现它的真正原因,一般只有在查看源代码后才能发现。某些类型的数据会被系统自动转换,一般也不会出现错误;但有些数据被截断或被强制转换成另外一种数据类型时,会出现一些潜在的错误。在集成测试时此类错误最有可能发生。

 

        既然分析出了这些Bug不能重现的原因,我们就可以对症下药了:

        1.  测试人员要有重视测试环境的意思,并在Bug Report里面增加对测试环境的准确描述,特别是影响重现此Bug的那些环境因素。

        2.  Bug的Step要准确说明操作步骤。为了重现一个Bug,测试人员可能需要对几个Build进行连续跟踪、测试和定位产生这个Bug的最根本原因。

        3.     正确设置浏览器的选项。

        4.  对性能有要求的软件或系统一定要进行长期负荷测试(LoadingTesting),以发现内存泄露等需要长期运行才能出现的问题。根据微软的测试经验,如果软件能通过72小时的强力测试,则该软件72小时后出现问题的可能几率微乎其微。因此只需对软件进行72小时的强力测试即可。

        5.  集成测试时一定要注意函数接口类型是否匹配。

        6.  测试人员要与开发人员、DBA等保持良好的关系。遇到问题要及时、主动与他们沟通,听取他们的意见。在他们的帮助下,你可以更容易地找到问题的关键所在之处。

        根据上面的这些建议,我相信大多数不能重现的Bug都可以重现了。当然由于测试的系统的开发语言、开发平台等因素的不同,恕笔者不能一一列举出无法重现的Bug发生所有原因。如果还是遇到某些严重的、却又无法重现的Bug,那么也不必惊慌,你可以按照下面的操作去查找产生Bug的原因:

        1.  积极回忆Bug的症状和所有的环境因素,一丝一毫的细节都不要错过。

        2.  与开发人员、DBA、系统设计人员、项目经理等一起分析那些环境因素,根据以往的经验分析影响此Bug重现的重要因素,并在相同的环境上安装同样的系统进行测试,以验证所做的猜测。

        另外,对于某些无法重现、但严重程度不是很高的Bug,可以暂时只作记录、而不必花费大量的人力和物力去分析。如果下次又出现了,那么根据发生的频率再去分析是否需要跟踪此Bug。如果需要跟踪它,那么在它又出现后一定要立刻对当时的环境进行截图,如错误信息、界面、日志等。这样也利于开发人员定位、分析它,从而准确、快速地修复它。如果条件允许,测试人员应立即保护现有环境,并邀请相关的开发人员和系统分析人员一起研讨产生此问题的原因和解决方法。

 

 

TAG:

 

评分:0

我来说两句

日历

« 2024-04-28  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 4361
  • 图片数: 1
  • 文件数: 3
  • 书签数: 5
  • 建立时间: 2007-04-16
  • 更新时间: 2009-08-14

RSS订阅

Open Toolbar