软件质量管理 第六章.pptx
《软件质量管理 第六章.pptx》由会员分享,可在线阅读,更多相关《软件质量管理 第六章.pptx(79页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第六章第六章 软件缺陷跟踪管理软件缺陷跟踪管理目录目录1 1、 软件缺陷的概念和种类软件缺陷的概念和种类2 2、 正确面对软件缺陷正确面对软件缺陷3 3、 软件缺陷的生命周期软件缺陷的生命周期4 4、 软件缺陷的严重性和优先级软件缺陷的严重性和优先级 5 5、 报报 告告 软软 件件 缺缺 陷陷6 6、 分离和再现软件缺陷分离和再现软件缺陷7 7、 测测 试试 总总 结结 报报 告告8 8、 测测 试试 的的 评评 测测 软件测试是在软件开发的过程中,对软件产软件测试是在软件开发的过程中,对软件产品进行质量控制,目的是保证软件产品的最终质品进行质量控制,目的是保证软件产品的最终质量。一般来说软
2、件测试应严格按照软件测试流程,量。一般来说软件测试应严格按照软件测试流程,制定测试计划、测试方案、测试规范,实施测试,制定测试计划、测试方案、测试规范,实施测试,对测试数据进行记录,并根据测试情况撰写测试对测试数据进行记录,并根据测试情况撰写测试报告。测试报告主要是报告发现的软件缺陷。报告。测试报告主要是报告发现的软件缺陷。 测试评价主要包括覆盖评价以及质量测试评价主要包括覆盖评价以及质量和性能评价。覆盖评价是对测试完全程度和性能评价。覆盖评价是对测试完全程度的评测;质量和性能评价是对测试的软件的评测;质量和性能评价是对测试的软件对象的性能、稳定性以及可靠性的评测。对象的性能、稳定性以及可靠性
3、的评测。1、 软件缺陷的概念和种类软件缺陷的概念和种类 软件缺陷简单说就是存在于软件(文档、数软件缺陷简单说就是存在于软件(文档、数据、程序)之中的那些不希望,或不可接受的偏据、程序)之中的那些不希望,或不可接受的偏差,而导致软件产生的质量问题。按照一般的定差,而导致软件产生的质量问题。按照一般的定义,只要符合下面义,只要符合下面5 5个规则中的一个,就叫做软件个规则中的一个,就叫做软件缺陷。缺陷。 软件未达到软件规格说明书中规定的功能;软件未达到软件规格说明书中规定的功能; 软件超出软件规格说明书中指明的范围;软件超出软件规格说明书中指明的范围; 软件未达到软件规格说明书中指出的应达到的目软
4、件未达到软件规格说明书中指出的应达到的目标;标; 软件运行出现错误;软件运行出现错误; 软件测试人员认为软件难于理解,不易使用,运软件测试人员认为软件难于理解,不易使用,运行速度慢,或者最终用户认为软件使用效果不好。行速度慢,或者最终用户认为软件使用效果不好。 在软件测试过程中如何判断软件缺陷,软件在软件测试过程中如何判断软件缺陷,软件缺陷都有哪些种类?缺陷都有哪些种类? (1 1)功能不正常)功能不正常 (2 2)软件在使用上不方便)软件在使用上不方便 (3 3)软件的结构未做良好规划)软件的结构未做良好规划 (4 4)功能不充分)功能不充分 (5 5)与软件操作者的互动不良)与软件操作者的
5、互动不良 (6 6)使用性能不佳)使用性能不佳(7 7)未做好错误处理)未做好错误处理(8 8)边界错误)边界错误(9 9)计算错误)计算错误(1010)使用一段时间所产生的错误)使用一段时间所产生的错误(1111)控制流程的错误)控制流程的错误(1212)在大数据量压力之下所产生的错误)在大数据量压力之下所产生的错误(1313)在不同硬件环境下产生的错误)在不同硬件环境下产生的错误(1414)版本控制不良所产生的错误)版本控制不良所产生的错误(1515)软件文档的错误)软件文档的错误2、正确面对软件缺陷、正确面对软件缺陷 在软件测试过程中,软件测试人员必须在软件测试过程中,软件测试人员必须确
6、保测试过程发现的软件缺陷得以关闭。确保测试过程发现的软件缺陷得以关闭。 测试是为了证明程序有错,而不是证测试是为了证明程序有错,而不是证明程序没错。不管测试计划多么完善和执明程序没错。不管测试计划多么完善和执行测试多么努力,也不能保证所有软件缺行测试多么努力,也不能保证所有软件缺陷发现了就能修复。陷发现了就能修复。 有些软件缺陷可能会完全被忽略,还有些软件缺陷可能会完全被忽略,还有一些可能推迟到软件后续版本中修复。有一些可能推迟到软件后续版本中修复。有些软件缺陷不被修复的原因如下。有些软件缺陷不被修复的原因如下。(1 1)没有足够的时间)没有足够的时间(2 2)不算真正的软件缺陷)不算真正的软
7、件缺陷(3 3)修复的风险太大)修复的风险太大(4 4)不值得修复)不值得修复 虽然软件测试人员需要对自己找出的软件缺虽然软件测试人员需要对自己找出的软件缺陷保持一种平常心态,但同时又必须坚持有始有陷保持一种平常心态,但同时又必须坚持有始有终的原则,跟踪每一个软件缺陷的处理结果,确终的原则,跟踪每一个软件缺陷的处理结果,确保软件缺陷得以关闭。保软件缺陷得以关闭。 而缺陷是否需要修复的最终决定权在软件的而缺陷是否需要修复的最终决定权在软件的项目负责人,但使得缺陷得以关闭的责任在测试项目负责人,但使得缺陷得以关闭的责任在测试人员。人员。3、软件缺陷的生命周期、软件缺陷的生命周期 软件缺陷从被测试人
8、员发现一直到被软件缺陷从被测试人员发现一直到被修复,也经历了一个特有的生命周期的阶修复,也经历了一个特有的生命周期的阶段。下面是一个最简单的软件缺陷生命周段。下面是一个最简单的软件缺陷生命周期的例子,系统地表示软件缺陷从被发现期的例子,系统地表示软件缺陷从被发现起经历的各个阶段:起经历的各个阶段: (1 1)测试人员找到并登记软件缺陷,软件)测试人员找到并登记软件缺陷,软件缺陷被移交到程序修复人员。缺陷被移交到程序修复人员。 (2 2)程序修复人员修复软件中的软件缺陷,)程序修复人员修复软件中的软件缺陷,然后移交到测试人员。然后移交到测试人员。 (3 3)测试人员确认软件缺陷被修复,关闭)测试
9、人员确认软件缺陷被修复,关闭软件缺陷。软件缺陷。 当软件缺陷首先被软件测试人员发现时当软件缺陷首先被软件测试人员发现时 。 在许多情况下,软件缺陷生命周期的在许多情况下,软件缺陷生命周期的复杂程度仅为软件缺陷被打开、解决和关复杂程度仅为软件缺陷被打开、解决和关闭。然而,在有些情况下,生命周期变得闭。然而,在有些情况下,生命周期变得更复杂一些,如图更复杂一些,如图5-15-1所示。所示。 发现软件缺陷 软件缺陷移交到项目管理员 测试员找到并登记软件缺陷 软件缺陷被移交到程序员 程序员认为软件缺陷微不足道 软件缺陷移交到测试员 项目管理员认为软件缺陷不重要 测试员不同意,找出 通用失败案例 软件缺
10、陷移交到项目管理员 软件缺陷移交到测试员 软件缺陷移交到程序员 测试员确认 软件缺陷得以修复 程序员修复软件缺陷 测试员关闭软件缺陷 项目管理员现在同意 软件缺陷需要修复 打开 打开 以不修复 形式解决 打开 打开 以修复 形式解决 关闭 图图5-1 复杂的软件缺陷生命周期复杂的软件缺陷生命周期 4、软件缺陷的严重性和优先级、软件缺陷的严重性和优先级 测试人员要对软件缺陷分类,以简明扼要的测试人员要对软件缺陷分类,以简明扼要的方式指出其影响。经常使用的方法是给软件缺陷方式指出其影响。经常使用的方法是给软件缺陷划分严重性和优先级。严重性表示软件缺陷的恶划分严重性和优先级。严重性表示软件缺陷的恶劣
11、程度,反映其对产品和用户的影响;优先级表劣程度,反映其对产品和用户的影响;优先级表示修复缺陷的重要程度和应该何时修复。下面给示修复缺陷的重要程度和应该何时修复。下面给出严重性和优先级的常用划分方法,将有助于测出严重性和优先级的常用划分方法,将有助于测试人员更好地理解两者之间的差异。试人员更好地理解两者之间的差异。 严重性级别:严重性级别: 致命错误,例如,导致系统崩溃、致命错误,例如,导致系统崩溃、数据丢失、数据毁坏等;数据丢失、数据毁坏等; 一般性错误,例如,操作性错误、一般性错误,例如,操作性错误、错误结果、遗漏功能等;错误结果、遗漏功能等; 次要错误,例如,错别字、用户接次要错误,例如,
12、错别字、用户接口布局、罕见故障等。口布局、罕见故障等。缺陷优先级:缺陷优先级: 最高优先级,指的是一些关键性错误,必最高优先级,指的是一些关键性错误,必须立即修复;须立即修复; 高优先级,在产品发布之前必须修复;高优先级,在产品发布之前必须修复; 中优先级,如果时间允许应该修复;中优先级,如果时间允许应该修复; 低优先级,可能会修复,但是也能发布软低优先级,可能会修复,但是也能发布软件。件。5、报、报 告告 软软 件件 缺缺 陷陷报告软件缺陷的基本原则:报告软件缺陷的基本原则: 在软件测试过程中,对于发现的大多数软件缺陷,在软件测试过程中,对于发现的大多数软件缺陷,要求测试人员简捷、清晰地把发
13、现的问题报告给要求测试人员简捷、清晰地把发现的问题报告给判断是否进行修复的小组,使其得到所需要的全判断是否进行修复的小组,使其得到所需要的全部信息,然后才能决定怎么做。部信息,然后才能决定怎么做。 报告软件缺陷的基本原则如下:报告软件缺陷的基本原则如下:1尽快报告软件缺陷2有效地描述软件缺陷 有效的软件缺陷描述要求如下:有效的软件缺陷描述要求如下:(1 1)简单与短小)简单与短小(2 2)明确指明错误类型)明确指明错误类型(3 3)单一)单一(4 4)使用)使用ITIT业界惯用的表达术语和表达方业界惯用的表达术语和表达方法法 3 3在报告软件缺陷时不做任何评价在报告软件缺陷时不做任何评价4 4
14、补充和完善软件缺陷报告补充和完善软件缺陷报告 以上概括了报告测试错误的规范要求,测试以上概括了报告测试错误的规范要求,测试人员应该牢记上面这些关于报告软件缺陷的原则。人员应该牢记上面这些关于报告软件缺陷的原则。这些原则几乎可以运用到任何交流活动中,尽管这些原则几乎可以运用到任何交流活动中,尽管有时难以做到,然而,如果希望有效地报告软件有时难以做到,然而,如果希望有效地报告软件缺陷,并使其得以修复,这些是测试人员要遵循缺陷,并使其得以修复,这些是测试人员要遵循的基本原则。的基本原则。 随着软件的测试要求不同,测试者积累了相随着软件的测试要求不同,测试者积累了相应的测试经验会,将会逐渐养成良好的专
15、业习惯,应的测试经验会,将会逐渐养成良好的专业习惯,不断补充新的规范书写要求。此外,经常阅读、不断补充新的规范书写要求。此外,经常阅读、学习高级测试工程师的测试错误报告,结合自己学习高级测试工程师的测试错误报告,结合自己以前的测试错误报告进行对比和思考,可以不断以前的测试错误报告进行对比和思考,可以不断提高技巧。提高技巧。IEEE软件缺陷报告模板软件缺陷报告模板 ANS/IEEE8291998 ANS/IEEE8291998标准定义了一个标准定义了一个称为软件缺陷报告的文档,用于报告称为软件缺陷报告的文档,用于报告“在在测试期间发生的任何异常事件测试期间发生的任何异常事件”。简言之,。简言之,
16、就是用于登记软件缺陷。模板标准如图就是用于登记软件缺陷。模板标准如图5-5-3 3所示。所示。图图5-3 IEEE5-3 IEEE软件缺陷报告模板软件缺陷报告模板 IEEE8291998软件测试文档编制标准 软件缺陷报告模板 目录 1软件缺陷报告标识符 2软件缺陷总结 3软件缺陷描述 3.1 输入 3.2 期望得到的结果 3.3 实际结果 3.4 异常情况 3.5 日期和时间 3.6 软件缺陷发生步骤 3.7 测试环境 3.8 再现测试 3.9 测试人员 3.10 见证人 4影响 软件缺陷数据库跟踪系统软件缺陷数据库跟踪系统 至此,我们了解到软件缺陷报告过程是很至此,我们了解到软件缺陷报告过程
17、是很复杂的,需要大量信息、详尽的细节和很好的复杂的,需要大量信息、详尽的细节和很好的组织工作,才能有所成效。在实际软件测试工组织工作,才能有所成效。在实际软件测试工作中,为了更高效地记录发现的软件缺陷,并作中,为了更高效地记录发现的软件缺陷,并在软件缺陷的整个生命周期中对其进行监控,在软件缺陷的整个生命周期中对其进行监控,常常运用软件缺陷跟踪系统。图常常运用软件缺陷跟踪系统。图5-45-4所示的是一所示的是一个软件缺陷数据库跟踪系统。个软件缺陷数据库跟踪系统。图图 软件缺陷数据库跟踪系统软件缺陷数据库跟踪系统 软件缺陷跟踪数据库最常用的功能,除了输入软件缺陷跟踪数据库最常用的功能,除了输入软件
18、缺陷之外,就是通过执行查询来获得需要的软件缺陷之外,就是通过执行查询来获得需要的软件缺陷清单。软件缺陷清单。 通过使用软件缺陷跟踪数据库,不但可以进通过使用软件缺陷跟踪数据库,不但可以进行查询,还可以找出发现的软件缺陷类型,发现行查询,还可以找出发现的软件缺陷类型,发现软件缺陷的速度,以及多少软件缺陷已经得到了软件缺陷的速度,以及多少软件缺陷已经得到了修复,能够提取各种实用和关心的数据,可以显修复,能够提取各种实用和关心的数据,可以显示测试工作的成效和项目的进展情况。示测试工作的成效和项目的进展情况。 测试人员或者项目管理员可以看出数据中是测试人员或者项目管理员可以看出数据中是否有趋势显示需要
19、增加测试的区域,或者测试工否有趋势显示需要增加测试的区域,或者测试工作是否符合预先所制定的测试计划的进程等。作是否符合预先所制定的测试计划的进程等。手工报告和跟踪软件缺陷手工报告和跟踪软件缺陷 显然,在软件测试工作中,每个测试用例的显然,在软件测试工作中,每个测试用例的结果都必须进行记录。如果使用软件缺陷数据库结果都必须进行记录。如果使用软件缺陷数据库跟踪系统,那么测试工具将自动记录软件缺陷的跟踪系统,那么测试工具将自动记录软件缺陷的相关信息。如果测试是采用手工记录和跟踪软件相关信息。如果测试是采用手工记录和跟踪软件缺陷,那么有关软件缺陷的信息可以直接记录在缺陷,那么有关软件缺陷的信息可以直接
20、记录在相应的文档中。图相应的文档中。图5-55-5所示的是根据所示的是根据ANS/IEEE8291998ANS/IEEE8291998标准设计的软件缺陷报告文档。标准设计的软件缺陷报告文档。 图图5-5 5-5 软件缺陷报告文档软件缺陷报告文档 6、分离和再现软件缺陷、分离和再现软件缺陷 测试人员要想有效报告软件缺陷,就要对软测试人员要想有效报告软件缺陷,就要对软件缺陷以明显、通用和再现的形式进行描述。件缺陷以明显、通用和再现的形式进行描述。 分离和再现软件缺陷是考验软件测试人员专分离和再现软件缺陷是考验软件测试人员专业技能的地方,测试人员应该设法找出缩小问题业技能的地方,测试人员应该设法找出
21、缩小问题范围的具体步骤。对测试人员有利的情况是,若范围的具体步骤。对测试人员有利的情况是,若建立起绝对相同的输入条件时,软件缺陷就会再建立起绝对相同的输入条件时,软件缺陷就会再次出现,不存在随机的软件缺陷。次出现,不存在随机的软件缺陷。 如果找到的软件缺陷要采取繁杂的步骤才能如果找到的软件缺陷要采取繁杂的步骤才能再现,或者根本无法再现,碰到这种情况,可采再现,或者根本无法再现,碰到这种情况,可采取如下的方法来分离和再现软件缺陷。实践证明取如下的方法来分离和再现软件缺陷。实践证明这些方法对测试人员是有所帮助的。这些方法对测试人员是有所帮助的。(1)不要想当然地接受任何假设(2)注意时间和运行条件
22、上的因素(3)注意软件的边界条件、内存容量和数据溢出的问题(4)注意事件发生次序导致的软件缺陷(5)考虑资源依赖性和内存、网络、硬件共享的相互作用(6)不要忽视硬件7、测、测 试试 总总 结结 报报 告告 测试总结报告的目的是总结测试活动的结果,测试总结报告的目的是总结测试活动的结果,并根据这些结果对测试进行评价。这种报告是测并根据这些结果对测试进行评价。这种报告是测试人员对测试工作进行总结,并识别出软件的局试人员对测试工作进行总结,并识别出软件的局限性和发生失效的可能性。在测试执行阶段的末限性和发生失效的可能性。在测试执行阶段的末期,应该为每个测试计划准备一份相应的测试总期,应该为每个测试计
23、划准备一份相应的测试总结报告。本质上讲,测试总结报告是测试计划的结报告。本质上讲,测试总结报告是测试计划的扩展,起着对测试计划扩展,起着对测试计划“封闭回路封闭回路”的作用。的作用。 图图5-65-6所示的是符合所示的是符合IEEEIEEE标准标准82919988291998软件软件测试文档编制标准的测试总结报告模板。测试文档编制标准的测试总结报告模板。 IEEE 标准 8291998 软件测试文档编制标准 测试总结报告模板 目录 1测试总结报告标识符 2总结 3差异 4综合评估 5结果总结 5.1 已解决的意外事件 5.2 未解决的意外事件 6评价 7建议 8活动总结 9审批 图图5-6 5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件质量管理第六章
限制150内