报告所发现的软件缺陷ppt课件

上传人:bin****86 文档编号:55390168 上传时间:2018-09-28 格式:PPT 页数:36 大小:831KB
返回 下载 相关 举报
报告所发现的软件缺陷ppt课件_第1页
第1页 / 共36页
报告所发现的软件缺陷ppt课件_第2页
第2页 / 共36页
报告所发现的软件缺陷ppt课件_第3页
第3页 / 共36页
报告所发现的软件缺陷ppt课件_第4页
第4页 / 共36页
报告所发现的软件缺陷ppt课件_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《报告所发现的软件缺陷ppt课件》由会员分享,可在线阅读,更多相关《报告所发现的软件缺陷ppt课件(36页珍藏版)》请在金锄头文库上搜索。

1、软件测试方法和技术 报告所发现的软件缺陷,报告所发现的软件缺陷,1 软件缺陷的描述 1.1软件缺陷的基本描述 1.2 软件缺陷属性 2 软件缺陷相关的信息 2.1 软件缺陷的图片、记录信息 2.2 分离和再现软件缺陷 3 软件缺陷的处理和跟踪 3.1 软件缺陷生命周期 3.2 软件缺陷处理技巧 3.3 软件缺陷跟踪系统 3.4缺陷跟踪的方法和图表,软件缺陷的描述,软件缺陷指的是系统或系统部件中那些导致系统或部件不能实现其功能的缺陷。如果在执行中遇到一个缺陷,可能引起系统的失效。那么准确有效的定义和描述软件缺陷,可以使软件缺陷得以快速修复,节约了软件测试项目的成本和资源,提高产品质量。,软件缺陷

2、是什么?,软件缺陷的基本描述,软件缺陷的描述是软件缺陷报告中测试人员对问题的陈述的一部分并且是软件缺陷报告的基础部分。同时,软件缺陷的描述也是测试人员就一个软件问题与开发小组交流的最初且最好的机会。一个好的描述,需要使用简单的、准确的、专业的语言来抓住缺陷的本质。以下是软件缺陷的有效描述规则: 单一准确 可以再现 完整统一 短小简练 特定条件 补充完善 不做评价,软件缺陷标识和类型,软件缺陷属性包括缺陷标识、缺陷类型、缺陷严重程度、缺陷产生可能性、缺陷优先级、缺陷状态、缺陷起源、缺陷来源、缺陷原因。 缺陷标识:是标记某个缺陷的唯一的表示,可以使用数字序号表示。 缺陷类型:是根据缺陷的自然属性划

3、分缺陷种类。见软件缺陷类型列表:,软件缺陷缺陷严重程度,缺陷严重程度:是指因缺陷引起的故障对软件产品的影响程度,所谓“严重性”我指的是在测试条件下,一个错误在系统中的绝对影响。见软件缺陷严重等级列表:,软件缺陷缺陷产生的可能性和优先级,缺陷产生的可能性:指缺陷在产品中发生的可能性,通常可以用频率来表示。缺陷优先级:指缺陷必须被修复的紧急程度。“优先级”的衡量抓住了在严重性中没有考虑的重要程度因素。,软件缺陷缺陷状态,缺陷状态:指缺陷通过一个跟踪修复过程的进展情况,也就是在软件生命周期中的状态基本定义,如软件缺陷状态列表所示:,软件缺陷缺陷起源和来源,缺陷起源:缺陷引起的故障或事件第一次被检测到

4、的阶段,如软件缺陷起源列表所示。 缺陷来源:指缺陷所在的地方,如文档、代码等,如软件缺陷来源列表所示。,软件缺陷缺陷根源,缺陷根源:指造成上述错误的根本因素,以寻求软件开发流程的改进、管理水平的提高,如软件缺陷根源列表所示。,软件缺陷相关的信息,软件缺陷相关的信息包括软件缺陷的图片、记录信息和如何再现和分离软件缺陷;对于某一个软件缺陷报告,测试人员应该给予相关的信息,例如捕捉到软件缺陷日志文件和图片,保证开发人员和其他的测试人员可以分离和重现它。 软件缺陷的图片、记录信息 记录软件缺陷的相关图片 一些涉及用户界面(User Interface)的软件缺陷可能很难用文字清楚地描述,因此软件测试人

5、员通过附上图片比较直观地表示缺陷发生在产品界面什么位置、有什么问题等。 使用Soft-ICE记录软件缺陷信息Soft-ICE 是 Compuware公司的产品NuMega DriverStudio中一个代表性的工具,用于跟踪软件运行时的变量、内存等状态,而且可以捕捉系统崩溃时的状态。使用它可以记录产品发生缺陷的地方,同时生成日志文件。,如何使用Soft-ICE,当出现软件系统崩溃的缺陷时,测试人员需要在软件缺陷报告上附上日志文件,便于开发人员即时修复软件缺陷。当遭遇软件崩溃时候,如何使用Soft-ICE?在开始测试之前,已经安装了Soft-ICE并启动了“faults on”的命令。当软件发生

6、崩溃现象时,可以使用下面命令去捕捉必要的信息: stack u eip-80 如果数据窗口是开启的状态,可以输入”wd”来关闭该窗口,然后再输入 “dd esp-20”命令。stack 、dd esp-20是为了标注跟踪信息。 通过输入“x“,退出 Soft-ICE的窗口;如果还是无法退出Soft-ICE,需要输入faults off“,然后输入“x“。 打开Soft-ICE应用程序,立即保存日志文件。一旦再次打开Soft-ICE,请输入“faults on“,分离和再现软件缺陷,为了有效地再现软件缺陷,除了按照软件缺陷的有效描述规则来描述软件缺陷,还要遵循软件缺陷分离和再现的方法和具有较高的

7、技巧性,虽然有时少数几个缺陷很难再现、或者根本无法再现。以下就介绍如何分离和再现缺陷的一些常用方法和技巧。确保所有的步骤都被记录。特定条件和时间。压力和负荷、内存和数据溢出相关的边界条件。 考虑资源依赖性包括内存、网络和硬件共享的相互作用等。 不能忽视硬件。与软件不同,硬件不按预定方式工作。 开发人员有时可以根据相对简单的错误信息就能找出问题所在。因为开发人员熟悉代码,因此看到症状、测试用例步骤和分离问题的过程时,可能得到查找软件缺陷的线索。一个软件缺陷的分离和再现问题有时需要小组的共同努力。如果软件测试人员尽最大努力分离软件缺陷,也无法表达准确的再现步骤,那么仍然需要记录和报告软件缺陷。,分

8、离和调试软件缺陷之间的区别,讨论分离和调试软件缺陷之间的区别,是为了划清测试人员与开发人员的责任,增加界限的清晰度与测试资源的控制能力。面对一个软件缺陷时,开发人员或测试人员为了修复它,会提出一系列分步骤地、处理缺陷的疑问: 再现软件缺陷现象所需的最少步骤有哪些?这些步骤成功再现的可能性多大? 软件缺陷是否成立存在?换句话说,测试结果是否可能起源于测试因素或者测试人员自身的错误,还是影响顾客需求的、系统真正的故障? 哪些外部因素产生软件缺陷? 哪些内部因素,是代码、网络、还是环境引起的软件缺陷? 怎样才能在不产生新的缺陷的条件下使这个软件缺陷得到修复? 这种修复是否经过调试,单元是否经过测试?

9、 问题解决了吗?它是否通过了确认和回归测试,确定系统的其余部分仍工作正常?,软件缺陷的处理和跟踪,软件缺陷跟踪管理是测试工作的一个重要部分,测试的目的是为了尽早发现软件系统中的缺陷,而对软件缺陷进行跟踪管理的目的是确保每个被发现的缺陷都能够及时得到处理。软件测试过程简单说就是围绕缺陷进行的,对缺陷的跟踪管理,一般而言需要达到以下目标:确保每个被发现的缺陷都能够被解决,“解决”的意思不一定是被修正,也可能是其他处理方式(例如,延迟到下一个版本中修正或者由于技术原因不能被修正),总之,对每个被发现的BUG的处理方式必须能够在开发组织中达到一致;收集缺陷数据并根据缺陷趋势曲线识别测试处于测试过程中的

10、哪个阶段; 决定测试过程是否结束,通过缺陷趋势曲线来确定测试过程是否结束是常用并且较为有效的一种方式。收集缺陷数据并在其上进行数据分析,作为组织过程改进的财富。,简单、优化的软件缺陷生命周期,生命周期的概念是一个物种从诞生到消亡经历了不同的生命阶段,那么软件缺陷生命周期应该指的是一个软件缺陷被发现、报告到这个缺陷被修复、验证直至最后关闭的完整过程。在整个软件缺陷生命周期中,通常是以改变软件缺陷的状态来体现不同的生命阶段。因此,对于一个软件测试人员来讲,需要关注软件缺陷在生命周期中的状态的变化,来跟踪项目进度和软件质量。一个简单、优化的软件缺陷生命周期:发现-打开:测试人员找到软件缺陷并将软件缺

11、陷提交给开发人员。 打开-修复:开发人员再现、修复缺陷,然后提交给测试人员去验证。 修复-关闭:测试人员验证修复过的软件,关闭已不存在的缺陷。,复杂的软件缺陷生命周期,在实际工作中,软件缺陷的生命周期不可能像如上那么简单,需要考虑其它各种情况,给出了一个复杂的软件缺陷生命周期的例子, 如图所示:,综上所述,软件缺陷在生命周期中经历了数次的审阅和状态变化,最终测试人员关闭软件缺陷来结束软件缺陷的生命周期。软件缺陷生命周期中的不同阶段是测试人员、开发人员和管理人员一起参与、协同测试的过程。软件缺陷一旦发现,便进入测试人员、开发人员、管理人员的严密监控之中,直至软件缺陷生命周期终结,这样即可保证在较

12、短的时间内高效率地关闭所有的缺陷,缩短软件测试的进程,提高软件质量,同时减少开发、测试和维护成本。,软件缺陷生命周期综述,软件缺陷处理技巧,管理员、测试人员和开发人员需要掌握在软件缺陷生命周期的不同阶段处理软件缺陷技巧,从而尽快处理软件缺陷,缩短软件缺陷生命周期。以下列出处理软件缺陷基本技巧: 审阅。当测试人员在缺陷跟踪数据库中输入了一个新的缺陷时,测试员应该提交它,以便在它能够起作用之前进行审阅。这种审阅可以由测试管理员、项目管理员或其他人来进行,主要审阅缺陷报告的质量水平; 拒绝。如果审阅者决定需要对一份缺陷报告进行重大修改,例如需要添加更多的信息或者需要改变缺陷的严重等级,应该和测试人员

13、一起讨论,由测试人员纠正缺陷报告,然后再次提交; 完善。如果测试员已经完整地描述了问题的特征并将其分离,那么审查者就会肯定这个报告; 分配。当开发组接受完整描述特征并被分离的问题时,测试员会将它分配给适当的开发人员,如果不知道具体开发人员,应分配给项目开发组长,由开发组长再分配给对应的开发人员;,软件缺陷处理技巧,测试。一旦开发人员修复一个缺陷,它就将进入测试阶段。缺陷的修复需要得到测试人员的验证,同时还要进行回归测试,检查这个缺陷的修复是否会引入新的问题; 重新打开。如果这个修复没有通过确认测试,那么测试人员将重新打开这个缺陷报告。重新打开一个缺陷,需要加注释说明,否则会引起“打开-修复”多

14、个来回,造成测试人员和开发人员不必要的矛盾 关闭。如果修复通过验证测试,那么测试人员将关闭这个缺陷。只有测试人员有关闭缺陷的权限,开发人员没有这个权限。 暂缓。如果每个人都同意将确实存在的缺陷移到以后处理,应该指定下一个版本号或修改的日期。一旦新的版本开始时,这些暂缓的缺陷应该重新被打开。测试人员、开发人员和管理者只有紧密的合作,掌握软件缺陷处理技巧,在项目不同阶段,及时的审查、处理和跟踪每个软件缺陷,加速软件缺陷状态的变换,提高软件质量,促进项目的发展。,软件缺陷跟踪系统,到目前为止所讲述的一切表面上看起来很好,但是运用到实践中还需要软件缺陷跟踪系统,以便描述报告所发现的缺陷,处理软件缺陷属

15、性,跟踪软件缺陷的整个生命周期和生成软件缺陷跟踪图表等。为什么需要建立一套软件缺陷跟踪系统呢?因为它会让我们受益无穷,概括起来有:软件缺陷跟踪系统拥有软件缺陷跟踪数据库,它不仅有利于软件缺陷的清楚描述,还提供统一的、标准化报告,使所有人的理解一致;缺陷跟踪数据库允许自动连续的软件缺陷编号,还提供了大量供分析和统计的选项,这是手工方法无法实现的;基于缺陷跟踪数据库,可快速生成满足各种查询条件的、所必要的缺陷报表、曲线图等,开发小组乃至公司的每一个人都可以随时掌握软件产品质量的整体状况、或测试/开发的进度;缺陷跟踪数据库提供了软件缺陷属性并允许开发小组根据对项目的相对和绝对重要性来修复缺陷;,软件

16、缺陷跟踪系统,可以在软件缺陷的生命期中管理缺陷,从最初的报告到最后的解决。确保了每一个缺陷不会被忽略,同时,它还可以使注意力保持在那些必须尽快修复的重要缺陷上; 当缺陷在它的生命周期中变化时,开发人员,测试人员以及管理人员将熟悉新的软件缺陷信息。一个设计良好的软件缺陷跟踪系统可以获取历史记录,并在检查缺陷的状态时参考历史记录; 在软件缺陷跟踪数据库中关闭每一份缺陷报告,它都可以被记录下来。当产品送出去时,每一份未关闭的缺陷报告都提供了预先警告的有效技术支持,并且证明测试人员找到特殊领域突然出现的事件中的软件缺陷。接下来就介绍一下软件缺陷跟踪系统(它遵守IEEE829-1983标准)。,软件缺陷

17、报告,任何一个缺陷跟踪系统的核心都是“软件缺陷报告”,一份软件缺陷报告详细信息如表: 软件缺陷项目列表,软件缺陷报告,软件缺陷的详细描述,软件缺陷的详细描述,如上所述,由三部分组成:操作/重现步骤、期望结果、实际结果,有必要再做进一步的讨论: “步骤”提供了如何重复当前缺陷的准确描述,应简明而完备、清楚而准确。这些信息对开发人员是关键的,视为修复缺陷的向导,开发人员有时抱怨糟糕的缺陷报告,往往集中在这里; “期望结果”与测试用例标准或设计规格说明书或用户需求等一致,达到软件预期的功能。测试人员站在用户的角度要对它进行描述,它提供了验证缺陷的依据。 “实际结果”测试人员收集的结果和信息,以确认缺陷确实是一个问题,并标识那些影响到缺陷表现的要素。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > 其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号