如果大家刚刚开始接触bug追踪、问题管理以及Web开发等工作,那么bug报告绝对是各位避不开的一项任务。在今天的文章中,我们将尝试从多种视角回答这个问题。相信我,内容还是相当有趣的。
我们总在探讨 bug报告……但却很少解释bug报告究竟是什么。
关于这个问题,我通过谷歌在Usersnap上找到1000多个相关结果,发布在博客上的博文也有183篇,其中涉及大量bug追踪工作中该做与不该做的内容。
然而,我们仍然没有回答最为核心的问题。不过关于bug报告的各类议题仍然相当丰富,毫无疑问。
总而言之,我们今天终于开始进入正题了……毕竟是个好消息,对吧?
“ 究竟什么是 bug报告? ”
那么我们首先回答这个问题,“究竟什么是bug报告?”
为了找到答案,我们需要了解几项相关概念,包括什么是bug、什么是bug报告以及bug报告软件。
什么是BUG?
在软件开发、工程或者Web构建过程当中,bug指的不是那种小小的昆虫,而是另一种完全不同的概念。
简而言之,这意味着:
软件bug是一种错误、缺陷、故障或者瑕疵,可能造成不正确或者预期之外的运行结果。
基本上,软件bug就是那种与设计思路不符的元素。
为什么叫它“bug”?——bug名称的起源
大家可能好奇,为什么要将软件错误称为bug?这是个好问题,因为用“bug”一词形容软件错误或者故障的作法可以追溯到1945年。1945年年末,哈佛大学的一个技术团队发现Relay70设备当中存在一些故障点。他们最终发现引发问题的是一些虫子(bug)尸体。
而在bug定义条目所指出,“这是历史上首例被记录在案的bug。”
因此,从理论上讲,bug就是与设计思路不符的元素。
不过,如果设计本身就存在问题,那么又该如何看待?这属于bug吗?如大家所见,这个问题的答案还有很多探讨空间。
无论大家属于开发者、设计师还是软件用户,想必在实际生活中都多少遇到过bug,甚至可能亲手造成过bug。
什么是bug报告?
那么新的问题来了:什么是bug报告?
当bug出现时,人们会发现并将其报告(记录为文档并发送)给负责修复错误或者故障的技术团队。
根据Yegor的说明,bug报告“应当解释产品所出现的具体问题。”
他进一步补充称,bug报告应当遵循以下这一基本模式:
“我遇到的情况是这样的,我希望实际情况是那样的,因此请加以修复。”
听起来很简单,对吧?然而实际情况并非如此——很多bug报告并没能说清需要表达的内容。
想象一下,如果我们自己遇到了bug并需要发送报告,那么会在其中包含哪些信息?答案恐怕将因人而异。
过去,bug报告属于冗长的表格,包含大量字段与数据请求。比如:
错误的优先级是什么?
怎样描述问题?
由哪些部分组成?
使用的是哪个版本的浏览器?
等等……
好的bug报告与差的bug报告
那么bug报告肯定也是有好坏的——二者区别何在?为什么会有这么多糟糕的bug报告?
我收集到了与此相关的一些说法,帮助大家更明确地进行区分:
那么***,我们要汇总以上内容来回答今天的主题:“究竟什么是bug报告?”
所谓bug报告,需要存储全部记录、报告及修复软件内或者网站上问题的信息。而且在理想场景下,其应尽可能以更为有效的方式实现。
总结陈词
总而言之,我们已经了解了关于bug、bug报告以及bug报告系统的相关知识。不过这还仅仅是基础,从有bug到无bug的道路仍然漫长而坎坷——同志们,加油!
文章转载自微信公众号“一斑”(ID: yiban51CTO)