软件缺陷是大家在工作的时候耳熟能详的词汇,但是你知道有关于软件失效都有哪些分类吗?Bug记录的信息到底都有哪些?基于以上的一些问题,我总结了如下知识点。
(1)软件错误(Error):在可以预见的时期内,软件仍将由人来开发。在整个软件生存期的各个阶段,都贯穿着人的直接或间接的干预。然而,人难免犯错误,这必然给软件留下不良的痕迹。软件错误是指在软件生存期内不希望或不可接受的人为错误,其结果将导致软件缺陷的产生。既然是人为错误,那么对软件本身是一种外部行为。
(2)软件缺陷(Defect):存在于软件(程序、数据和文档)之中的那些不希望或不可接受的偏差,如少一个逗点、 多一条语句等。其结果是软件运行于某一特定条件时出现软件故障,这时称软件缺陷被激活。
缺陷被认为是“欠缺和不够完备的地方”,符合以下任何一种情况,都叫做软件缺陷:
1、软件未达到产品说明书中标明的功能;
2、软件出现了产品说明书中指明不会出现的错误;
3、软件功能超出了产品说明书指明的范围;
4、软件未达到产品说明书虽未指出但应达到的目标;
5、软件测试人员认为难以理解、不易使用、运行速度慢,和最终用户认为不好使用。
(3)软件故障(Fault):指在软件运行过程中出现的一种不希望或不可接受的内部状态。比如软件处于执行一个多余循环过程时,我们说软件出现故障。此时若无适当措施(容错)加以及时处理,便产生软件失效。显然,软件故障是一种动态行为。
(4)软件失效(Failure):指在软件运行时产生的一种不希望或不可接受的外部行为结果。
综上所述,软件错误是一种人为错误。一个软件错误必定产生一个或多个软件缺陷。当一个软件缺陷被激活时,便产生一个软件故障,同一个软件缺陷在不同条件下被激活,可能产生不同的软件故障。软件故障如果没有及时的容错措施加以处理,便不可避免地导致软件失效,同一个软件故障在不同条件下可能产生不同的软件失效。
软件存在的缺陷与错误会带来软件失败的风险,重要软件故障与失效会导致重大经济损失与灾难。在报告软件缺陷时,一般要讲明如何处置它们。 测试人员要对软件缺陷分类,以简明扼要的方式指出其影响(严重性),以及修改的优先次序(优先级)。为了正确地跟踪每个软件错误的处理过程,通常将软件测试发现的每个错误作为一条记录输入指定的错误跟踪管理系统。作为一个错误跟踪管理系统,需要正确记录错误信息和错误处理信息的全部内容。Bug记录信息主要包括以下几项内容:
(1)测试软件名称;
(2)测试版本号;
(3)测试人名称;
(4)测试事件;
(5)测试软件和硬件配置环境;
(6)发现软件错误的类型;
(7)错误的严重等级:
(8)详细步骤;
(9)必要的附图;
(10)测试注释;
而Bug需要进行处理,其处理信息包括:
(1)处理者姓名;
(2)处理时间;
(3)处理步骤;
(4)错误记录的当前状态。