1 / 118

GB/T 15532-200X 计算机软件测试规范 简介

GB/T 15532-200X 计算机软件测试规范 简介. 报告人:冯 惠. 中国电子技术标准化研究所 信息技术研究中心技术总监. 目次 1 综述 2 相关概念 3 总则 4 测试类别说明 5 关于附录 6 标准实施中的有关事项 7 小结. 1 综述 1.1 修订背景和目的 GB/T 15532-1995《 计算机软件单元测试 》 是参照 IEEE std1008-1987 制定的,远不能满足当前发展需求 GB/T 16260-2006 系列标准给出了测试方向 修订 GB/T 15532-1995 是适时可行的

kylee
Download Presentation

GB/T 15532-200X 计算机软件测试规范 简介

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GB/T 15532-200X计算机软件测试规范简介 报告人:冯 惠 中国电子技术标准化研究所 信息技术研究中心技术总监

  2. 目次 1 综述 2 相关概念 3 总则 4 测试类别说明 5 关于附录 6 标准实施中的有关事项 7 小结

  3. 1 综述 1.1 修订背景和目的 GB/T 15532-1995《计算机软件单元测试》是参照IEEE std1008-1987制定的,远不能满足当前发展需求 GB/T 16260-2006系列标准给出了测试方向 修订GB/T 15532-1995是适时可行的 目的是为测试机构和重要的测试类别提供指导

  4. 1.2 GB/T 15532新版的内容结构 1 范围 2 规范性引用文件 3 术语和定义 4 总则 5 单元测试 6 集成测试 7 配置项测试 8 系统测试 9 验收测试 10 回归测试 附录A 测试方法 附录B 软件可靠性推荐模型 附录C 软件测试常用模板 附录D 软件测试内容的对应关系

  5. 1.3 新版标准的主要内容 本标准规定了每种测试类别具体的测试对象、目的、组织、管理、技术要求、内容、环境、方法、准入条件、准出条件、测试过程、文档等内容要求。并给出了每一类别的软件测试、软件回归测试的完整测试方案。

  6. 1.4 使用方法 第4章总则描述本规范的总体概貌和共性要求,第5至10章分别对单元测试、集成测试、配置项测试、系统测试和回归测试进行描述。所以在了解第4章的基础上,根据选定的测试类别精读第5至10章中有关的内容,就能开展测试工作。

  7. 1.5 与其它标准的关系 GB/T8566《信息技术 软件生存周期过程》 GB/T16260 《软件工程 产品质量》 GB/T9386 《计算机软件测试文档编制规范》

  8. 1.6 主要解决的问题 a)依据GB /T8566定义的软件生存周期,本标准明确了测试类别的划分,规范了每种测试类别的测试过程控制以及每个节点的评审要求,解决了软件测试中的管理问题。 b)依据GB/16260 软件质量度量的定义,明确软件测试的内容以软件质量特性的分类方法,对具体的软件项目选定需测试的内容要求。解决了测试内容如何保证全面、完整的问题,并统一了测试内容叫法上的混乱。另外也便于进行软件产品评价(即便于同GB /T16260《软件质量度量》和GB /T14598-2002《软件产品评价》的协调执行)。 c)推荐成熟且典型的测试方法,便于测试人员提高测试效率、保证测试质量。 d)明确了软件测试文档要求,便于同行审查与交流。

  9. 2 相关概念 2.1 软件测试定义 GB/T 11457的定义: 由人工或自动方法来执行或评价系统或系统部件的过程,以验证它是否满足规定的需求;或识别出期望的结果和实际结果之间有无差别。

  10. 1.2 软件测试目标 发现被测程序中的错误 发现测试方案或测试软件中的错误 发现至今尚未发现的程序中的错误

  11. 2.2 测试原则 及早测试 不急于修改 被测版本确定 阶段性 独立性 对测试计划测试说明的遵循 测试终止 客观公正 测试是开发的一部分 重点测试

  12. 2.3 测试对象 软件测试对象是针对全部的软件产品 (包括源代码和文档)

  13. 2.4 软件质量与测试 软件质量是站在不同的观点和立场对软件进行的评价(现在包括过程,也是动态的) 软件测试是为了发现并排除软件中存在的错误 软件测试是保证软件质量的重要手段 但软件测试不是保证软件质量的唯一手段 交出软件产品必须经过软件测试 理论上经过充分测试的软件是高质量的软件,但现实充分的测试是做不到的 或者说经过软件测试的软件≠软件没有错误

  14. 2.5 测试技术和方法 代码审查代码走查 桌面检查 技术评审 静态分析 静态测试 控制流分析数据流分析 接口分析 表达式分析 测试技术 黑盒测试技术 白盒测试技术 动态测试

  15. 功能测试 等价类划分 边值分析 因果图 随机测试 猜错法 黑盒测试技术 白盒测试技术 控制流覆盖 语句覆盖 分支覆盖 路径覆盖 错误处理路径 数据流覆盖 全定义使用路径 全使用路径 全定义路径 数据流异常状态图 动态测试

  16. 静态测试与动态测试的区别 静态测试 动态测试 测试方法 不运行程序 运行 测试对象(主要) 文档源代码 执行文件 输出结果 产品缺陷错误 错误 发现错误数量 基本相当 发现错误质量 基本相当 稳定性可靠性 低 高

  17. 白盒测试

  18. 黑盒测试

  19. 集成测试

  20. 回归测试 当发现软件存在缺陷后,首先要把错误定位,其次提出修改方案,经审定后进行正式修改。然后将原有的测试用例重新测试,并验证测试结果。这就是回归测试。请注意,不能简单地只执行发现缺陷的测试用例(需进行影响域分析),有时在修改程序时,会造成软件在其它处的缺陷。由此也可以看出,测试用例必须妥善保存。

  21. 验收测试 • 是以用户为主的测试。 • 对于商品化软件的测试,一般分α测试和β测试。α测试是软件企业在商品发布前的综合测试,β测试是投入市场前提供给某些用户进行试用的测试。

  22. 2.6 软件错误的分级 第1级错误。有下列行为之一的软件问题:妨碍由基线要求所规定的运行或任务的主要功能的完成;妨碍操作员完成运行或任务的主要功能;危及人员安全。 第2级错误。有下列行为之一的软件问题:给由基线要求所规定的运行或任务的主要功能的完成造成不利的影响,以致降低效能,且没有变通的解决办法;给操作员完成由基线要求所规定的运行或任务的主要功能造成不利的影响,以致降低效能,且没有变通的解决办法。

  23. 第3级错误。有下列行为之一的软件问题:给由基线要求所规定的运行或任务的主要功能的完成造成不利的影响,以致降低效能,但已知有变通的解决办法;给操作员完成由基线要求所规定的运行或任务的主要功能造成不利的影响,以致降低效能,但已知有变通的解决办法。第3级错误。有下列行为之一的软件问题:给由基线要求所规定的运行或任务的主要功能的完成造成不利的影响,以致降低效能,但已知有变通的解决办法;给操作员完成由基线要求所规定的运行或任务的主要功能造成不利的影响,以致降低效能,但已知有变通的解决办法。 第4级错误。这种软件问题给操作员带来不方便或麻烦,但不影响所要求的运行或任务的主要功能。 第5级错误。所有的其他错误。

  24. 2.7 软件错误的分类 程序问题。软件不按照保障文档运行,但文档是正确的。指程序编制过程中引入的错误。 文档问题。软件不按照保障文档运行,但程序运行是正确的。指文档编写过程中引入的错误。 设计问题。软件不按照保障文档运行,但存在着设计缺陷。指软件设计过程中引入的错误。 其它问题。指不属于上述三种类型的错误。

  25. 3 总则 GB/T 15532新版标准从软件测试目的、测试类别、测试过程、测试方法、测试用例、测试管理、测试文档、测试工具、软件完整性级别与测试的关系等方面给出基本的要求和说明。

  26. 3.1 测试类别结构 GB/T 15532新版标准给出的测试类别有: 单元测试 集成测试 配置项测试 系统测试 验收测试 回归测试

  27. 3.2 测试类别的描述结构如下 测试对象和目的 测试的组织和管理 技术要求 测试内容 测试环境 测试方法 测试过程 文档要求

  28. 3.3 测试种类 1)   功能测试;7)可靠性测试; 2)   性能测试;8)安全性测试; 3)   边界测试;9) 安装性测试; 4)   余量测试;10)恢复性测试; 5)   接口测试;11)功能多余物测试。 6)   强度测试;

  29. 3.4 测试种类的选择 并非在每个测试类别上都要完成上述所有的测试种类,也不是对任何软件都要完成上述所有的测试。究竟必须执行哪些测试,应根据软件的复杂性、关键等级和当前的测试类别选定。例如在X工程中,对此规定如下: 单元测试阶段至少完成:功能测试、边界测试。 部件集成和测试阶段至少完成: 功能测试、性能测试、余量测试、边界测试和接口测试。 软件配置项测试阶段至少完成: 功能测试、性能测试、余量测试、边界测试和接口测试。 对于安全关键等级为A、B级的软件还必须完成:强度测试、可靠性测试、安全测试和功能多余物测试 。

  30. 测试策划 测试设计与实现 修改或补充 执行测试 测试用例集 核对测试终止情况 测试总结 3.5 测试过程

  31. 测试策划 (主要进行测试需求分析) 确定需要测试的内容或质量特性; 确定测试的充分性要求; 提出测试的基本方法; 确定测试的资源和技术需求; 制定测试资源计划和测试进度计划。

  32. 测试设计与实现 ①分析测试用例集的层次结构,选取和设计测试用例;②获取并验证测试数据;③根据测试资源、风险等约束条件,确定测试用例执行顺序;④获取测试资源,开发测试软件;⑤建立并校准测试环境;⑥进行测试就绪审查,主要审查测试计划的合理性和测试用例的正确性、有效性和覆盖充分性,审查测试组织、环境和设备工具是否齐备并符合要求。在进入下一阶段工作之前,应通过测试就绪评审。

  33. 测试执行 ①执行测试用例,获取测试结果; ②分析并判定测试结果; ③同时,根据不同的判定结果采取相应的措施;对测试过程的正常或异常终止情况进行核对,并根据核对结果,对未达到测试终止条件的测试用例,决定是停止测试,还是需要修改或补充测试用例集,并进一步测试。

  34. 测试总结 ①评估测试效果和被测软件项,描述测试状态。如,实际测试与测试计划和测试说明的差异、测试充分性分析、未能解决的测试事件等;②描述被测软件项的状态,如,被测软件与需求的差异,发现的软件错误等;③最后,完成软件测试报告,并通过测试评审。

  35. 3.6 测试管理 软件测试应由相对独立的人员进行。根据软件项目的规模等级和完整性级别以及测试类别,软件测试可由不同机构组织实施。 应对测试过程中的测试活动和测试资源进行管理。有关管理要求见GB/T 8566。

  36. 准入准出条件 准入条件 开始软件测试工作一般应具备下列条件: 具有测试合同(或项目计划); 具有软件测试所需的各种文档; 所提交的被测软件受控; 软件源代码正确通过编译或汇编。

  37. 准出条件 结束软件测试工作一般应达到下列要求: 已按要求完成了合同(或项目计划)所规定的软件测试任务; 实际测试过程遵循了原定的软件测试计划和软件测试说明; 客观、详细地记录了软件测试过程和软件测试中发现的所有问题; 软件测试文档齐全、符合规范; 软件测试的全过程自始至终在控制下进行; 软件测试中的问题或异常有合理解释或正确有效的处理; 软件测试工作通过了测试评审; 全部测试软件、被测软件、测试支持软件和评审结果已纳入配置管理

  38. 3.7 测试用例设计 1.设计测试用例的原则 a)基于测试需求的原则。应按照测试级别的不同要求,设计测试用例。如,单元测试依据详细设计说明,部件测试依据概要设计说明,配置项测试依据软件需求规格说明,系统测试依据用户需求(系统/子系统设计说明、软件开发任务书等)。 b)基于测试方法的原则。应明确所采用的测试用例设计方法。为达到不同的测试充分性要求,应采用相应的测试方法,如等价类划分、边界值分析、猜错法、因果图等方法。 c)兼顾测试充分性和效率的原则。测试用例集应兼顾测试的充分性和测试的效率;每个测试用例的内容也应完整,具有可操作性。 d)测试执行的可重复性原则。应保证测试用例执行的可重复性。

  39. 测试用例的好与差有四个特性衡量: 有效性:能否发现软件缺陷或至少可能发现软 件缺陷; 可仿效性:可仿效的测试用例可以测试多项内 容,从而减少测试用例数量; 经济性:测试用例的执行分析和排错是否经济; 修改性:每次软件修改后对测试用例的维护成 本。 以上四个特性之间会有影响,如高仿效性有可能导致经济性和修改性较低。因此,通常情况下,应对上述四个特性进行一定的权衡折衷。

  40. 2.设计测试用例的要素 每个测试用例应包括以下要素: a)用例名称和用例标识。每个测试用例应有唯一的名称和标识。 b)测试追踪。说明测试所依据的内容来源,如系统测试依据的是用户需求,配置项测试依据的是软件需求,部件测试和单元测试依据的软件设计。 c)用例说明。简要描述测试的对象、目的和所采用的测试方法。

  41. d)用例的初始化。应考虑下述初始化要求: 1)硬件配置。被测系统的硬件配置情况, 包括硬件 条件或电气状态; 2)软件配置。被测系统的软件配置情况,包括测试的初始条件; 3)测试配置。测试系统的配置情况,如用于测试的模拟系统和测试工具等的配置情况; 4)参数设置。测试开始前的设置,如标志、第一断点、指针、控制参数和初始化数据等的设置; 5) 其它对于测试用例的特殊说明。

  42. e)操作过程。实施测试用例的执行步骤。把测试的操作过程定义为一系列按照执行顺序排列的相对独立的步骤,对于每个操作应提供:e)操作过程。实施测试用例的执行步骤。把测试的操作过程定义为一系列按照执行顺序排列的相对独立的步骤,对于每个操作应提供: 1)每一步所需的测试操作动作、测试程序的输入、设备操作等; 2)每一步期望的测试结果; 3)每一步的评估标准; 4)程序终止伴随的动作或出错指示; 5)获取和分析实际测试结果的过程。

  43. f)输入及操作说明。在测试用例执行中发送给被测对象的所有测试命令、数据和信号等。对于每个测试用例应提供如下内容:f)输入及操作说明。在测试用例执行中发送给被测对象的所有测试命令、数据和信号等。对于每个测试用例应提供如下内容: 1) 每个测试输入的具体内容(如确定的数值、状态或信号等)及其性质(如有效值、无效值、边界值等); 2) 测试输入的来源(例如,测试程序产生、磁盘文件、通过网络接收、人工键盘输入等),以及选择输入所使用的方法(例如,等价类划分、边界值分析、错误推测、因果图、功能图方法等); 3) 测试输入是真实的还是模拟的; 4) 测试输入的时间顺序或事件顺序。

  44. g)期望测试结果。 说明测试用例执行中由被测软件所产生期望的测试结果,即经过验证,认为正确的结果。必要时,应提供中间的期望结果。期望的测试结果应该有具体内容,如确定的数值、状态或信号等,不应是不确切的概念或笼统的描述。

  45. h)评估标准。 判断测试用例执行中产生的中间和最后结果是否正确的标准。对于每个测试结果,应根据不同情况提供如下信息: 1) 实际测试结果所需的精度; 2) 实际测试结果与期望结果之间的差异允许的上 限、下限; 3) 时间的最大和最小间隔,或事件数目的最大和最小值; 4) 实际测试结果不确定时,再测试的条件; 5) 与产生测试结果有关的出错处理; 6) 上面没有提及的其它标准。

  46. i)前提和约束。在测试用例说明中施加的所有前提条件和约束条件,如果有特别限制、参数偏差或异常处理,应该标识出来,并要说明它们对测试用例的影响。i)前提和约束。在测试用例说明中施加的所有前提条件和约束条件,如果有特别限制、参数偏差或异常处理,应该标识出来,并要说明它们对测试用例的影响。 j)过程终止条件。说明测试正常终止和异常终止的条件。 k)结果评估标准。指本测试用例的执行结果是否为通过的评估标准。 l)设计人员。指本测试用例的设计者署名处。 m)设计日期。指本测试用例的设计日期。

More Related