找出软件开发过程中的BUG,你需要火眼金睛

发表于:2010-11-19 13:36

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

 作者:朱璇    来源:51Testing软件测试网采编

  摘要:软件开发过程中,BUG的出现似乎在所难免。不过如何才能发现BUG,处理BUG,似乎有时我们需要007邦德那样的技巧。

  (1)Bug大都出现在程序员的编码过程中。测试人员工作之一就是找出Bug,面对那些难以被人发现的Bug,测试人员通常会采取哪些手段?以您的经验,对广大测试人员有什么好的建议?对于开发人员,您有什么建议让他们减少Bug的产生?

  之所以难以发现,大多是测试案例不够完整,检查测试案例是否全面覆盖了需求,等价类划得是不是够细有助于发现更多的问题。

  如果已经发现的问题大多是猜测法发现的,那么惨了,这是一个天马行空的测试,所有的BUG都将是难以发现的BUG,碰运气吧。如果你真的是在这个不幸的团队,别伤心,你有很多同伴都是这样不幸,继续用你学过的理论和可能不太多的编程经验,挖边界值,找亚边界,偷听开发人员聊天,看他们哪块儿是赶工的,哪块儿编得特艰难的,BUG往往在这里的,上升到理论就是20-80原则。

  发现难以发现的BUG曾经是评价测试人员的一个重要指标,这要求测试人员细心,有耐心,分析能力强,知识面广,逆向思维能力强,有创造力。要想练耐心细心,可以玩拼图,练习在人民日报上找错别字。练思维方式可以玩密室逃生,玩找不同。可以看出,测试人员还是满讲天份的,女生往往细心耐心有余创造力不足,男生偏向于跳跃思维,但往往坐不住。

  随着安全开发的概念的出现,软件的不可控性下降了,大家可以等着看微软Windows 7的补丁频率是不是还像2000/XP那么频繁。这个年代对测试人员的要求变成了开发能力强,要求结构化思维能力,简单的说,人治变法治了。

  开发人员的随意性是很大的,据说中国的开发人员和印度的开发人员的差别就在于中国的开发人员喜欢小创新而印度的开发人员一般比较乖。对于控制BUG,人治不如法治,人治是指教育开发人员开发时要多做校验,严格按需求开发,不要玩小创造等等,法制是指有严格的开发规范并有技术手段去保障开发人员遵守这样的规范。别把开发人员累死也是减少BUG的重要方法,测试人员成长为项目经理时一定记着这一点。

  (2)Bug除了出现在程序员编码阶段外,在测试过程中,会不会因为测试人员的操作失误,亦或是其他原因,导致软件出现Bug呢?

  只要软件还在生命周期里,都可能导致BUG的产生。在测试阶段,测试人员没发现的BUG,就留在软件里了,测试人员理解错误,本来是毛毛虫的BUG,他给理解成甲壳虫的BUG,而开发人员也居然就给改成甲壳虫了,也就引入了新的BUG。如果测试管理到位,测试人员发现的BUG不是直接交给开发人员,而是有个对需求了解比较好的管理者审一下,确定是否真的是BUG,再交给开发人员,可以有效地避免大部分测试导致的BUG。

  编码阶段的BUG其实只是BUG出现的一个小方面,最多的BUG,或说最严重的BUG,往往是在需求阶段,越早生成的BUG越难改,后果越严重。

  (3)对于测试人员来讲,除了借助于一些测试工具外,还应具备什么样的个人能力?是否需要具备自己动手处理Bug能力?再则您认为软件开发人员是否需要具备自我测试的能力?

  会用测试工具在应聘时超级管用,但要想当一个合格的测试人员,工具外的功夫还需要很多修炼。测试人员的技术能力很重要,作为开发测试,问题报告是给开发人员看的,需要用开发人员能看得懂的语言,因此懂开发,用开发人员的语言去描述问题就非常重要了,而如果是第三方测试,那么问题单不仅开发人员要看懂,业务人员,也就是用户也必需能看懂,这又要求测试人员要有被测软件所应用的领域的知识。

  表达能力也很重要,就是要把你发现的问题说明白,让别人看得懂。好的程序员用注释让别人看得懂,好的测试人员不用注释就得让别人看得懂。特别是不容易重现的问题,需要描述很多问题出现的背景条件,绝对是一个挑战。

  就像你无法描述开发人员应当需要什么能力一样,测试人员也各不相同,不管是技术强的,管理强的,沟通强的,脑子活的,细心的,耐心的,都会有发挥优势的地方。

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

精彩评论

  • zhuruize
    2010-11-19 17:30:03

    谢谢分享,写的非常不错.

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号