软件测试第8章 测试管理

上传人:ZJ****1 文档编号:58870094 上传时间:2018-11-02 格式:PPT 页数:42 大小:115KB
返回 下载 相关 举报
软件测试第8章 测试管理_第1页
第1页 / 共42页
软件测试第8章 测试管理_第2页
第2页 / 共42页
软件测试第8章 测试管理_第3页
第3页 / 共42页
软件测试第8章 测试管理_第4页
第4页 / 共42页
软件测试第8章 测试管理_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《软件测试第8章 测试管理》由会员分享,可在线阅读,更多相关《软件测试第8章 测试管理(42页珍藏版)》请在金锄头文库上搜索。

1、第八章 测试管理,随着软件开发规模的增大、复杂程度的增加,以寻找软件中的故障为目的的测试工作就显得更加困难。 为了尽可能多地找出程序中的故障,开发出高质量的软件产品,必须对测试工作进行组织策划和有效管理,采取系统的方法建立起软件测试管理体系。对测试活动进行监管和控制,以确保软件测试在软件质量保证中发挥应有的关键作用。,第八章 测试管理,8.1 建立测试管理体系 8.2测试管理的基本内容 8.2.1测试组织管理 8.2.2 测试过程管理 8.2.3 资源和配置管理 8.2.4 测试文档管理 8.3 测试管理的原则 8.4测试管理的实践 8.5 常用的测试管理工具 8.5.1 TestDirect

2、or测试管理工具 8.5.2 其他测试管理工具 8.5.3 国产测试管理工具TestCenter,8.1 建立测试管理体系,应用系统方法来建立软件测试管理体系,也就是把测试工作作为一个系统,对组成这个系统的各个过程加以识别和管理,以实现设定的系统目标。同时要使这些过程协同作用、互相促进,尽可能发现和排除软件故障。 测试系统主要由下面6个相互关联、相互作用的过程组成: 测试计划 测试设计 测试实施 配置管理 资源管理 测试管理,8.1 建立测试管理体系,此外,测试系统与软件修改过程是相互关联、相互作用的。测试系统的输出(软件故障报告)是软件修改的输入。反过来,软件修改的输出(新的测试版本)又成为

3、测试系统的输入。 根据上述6个过程,可以确定建立软件测试管理体系的6个步骤: 识别软件测试所需的过程及其应用,即测试规划、测试设计、测试实施、配置管理、资源管理和测试管理;确定这些过程的顺序和相互作用,前一过程的输出是后一过程的输入。其中,配置管理和资源管理是这些过程的支持性过程,测试管理则对其他测试过程进行监视、测试和管理; 确定这些过程所需的准则和方法,一般应制订这些过程形成文件的程序,以及监视、测量和控制的准则和方法; 确保可以获得必要的资源和信息,以支持这些过程的运行和对它们的监测; 监视、测量和分析这些过程; 实施必要的改进措施,8.2测试管理的基本内容,8.2.1测试组织管理 主要

4、任务: 组织和管理测试小组 确定测试小组的组织模式 安排测试任务 估计测试工作量 确定应交付的测试文档 管理测试件 确定测试需求和组织测试设计等。,8.2测试管理的基本内容,8.2.2测试过程管理 软件测试不等于程序测试,软件测试贯穿于软件开发整个生命周期,但软件测试过程管理在各个阶段的具体内容是不同的。 在软件开发的每个阶段,测试任务的最终完成都要经过从计划、设计、执行到结果分析、总结等一系列步骤,这便构成了软件测试的一个基本过程。 因此,软件测试过程管理主要集中在测试准备、测试计划、测试用例设计、测试执行、测试结果分析,以及如何开发和使用测试过程管理工具上。,8.2测试管理的基本内容,8.

5、2.2测试过程管理 基本内容包括: 测试准备 测试计划阶段 测试设计阶段 测试执行阶段 测试结果分析,8.2测试管理的基本内容,测试准备:确定测试组长,组建测试小组,参加有关项目计划、分析和设计会议,获取必要的需求分析、系统设计文档,以及相关产品/技术知识的培训。,8.2测试管理的基本内容,测试计划阶段:测试计划阶段的整体目标是为了确定测试范围、测试策略和方法,以及对可能出现的问题和风险,所需要的各种资源和投入等进行分析和估计,以指导测试的执行。 一个好的测试计划应该包括以下几方面的内容: 目的 完成测试的标准 测试策略 资源配置 责任明确进度安排 测试用例库及其标准化 组装方式 工具,8.2

6、测试管理的基本内容,测试设计阶段:软件测试设计建立在测试计划之上,通过设计测试用例来完成测试内容,以实现所确定的测试目标。 软件测试设计的主要内容有: 制定测试技术方案 设计测试用例 设计测试用例集合测试开发 设计测试环境 所设计的测试技术方案是否可行、是否有效、是否能达到预定的测试目标; 所设计的测试用例是否完整、是否考虑边界条件、能否达到其覆盖率要求; 所设计的测试环境是否和用户的实际使用环境接近等。,8.2测试管理的基本内容,测试执行阶段:建立和设置好相关的测试环境,准备好测试数据,开始执行测试。测试执行可以手工进行,也可以自动进行。自动化测试借助于测试工具,运行测试脚本,达到测试结果,

7、所以管理比较简单,而手工测试的管理相对要复杂些。,8.2测试管理的基本内容,测试结果分析:测试结束后,对测试结果进行分析,以确定软件产品的质量,为产品的改进或发布提供数据和支持。在管理上,应做好测试结果的审查和分析,做好测试报告的撰写和审查工作。,8.2测试管理的基本内容,8.2.3资源和配置管理 资源管理 人力资源:测试人员的数量及其测试技能,在测试项目中所需的测试人员和要求在各个阶段是不同的。 环境资源:建立测试环境所需要的计算机软件资源和硬件资源的总和。硬件提供了一个支持操作系统、应用系统和测试工具等运行的基本平台,软件资源则包括操作系统、第三方软件产品、测试工具等。,8.2测试管理的基

8、本内容,8.2.3资源和配置管理 配置管理在团队开发中,标识、控制和管理软件变更的一种管理,是通过在软件生命周期的不同时间点上对软件配置进行标识并对这些标识的更改进行系统控制,从而达到保证软件产品完整性和可溯性的过程。 基本过程: 配置标识:标识组成软件产品的各个组成部分并定义其属性,制定基线计划; 配置控制:控制对配置项的修改; 配置状态发布:向相关组织和个人报告变更申请的处理过程、允许的变更及其实现情况; 配置评审:确认受控配置项是否满足需求等。,8.2测试管理的基本内容,8.2.4测试文档管理 测试文档的类型 测试计划:详细规定测试的要求,包括测试的目的和内容、方法和步骤,以及测试的准则

9、等。 测试分析报告:用来对测试结果进行分析说明。软件经过测试后,应给出评价的结论性意见,软件的能力如何,存在哪些缺陷和限制等等。 测试文档的管理 文档的分类管理 文档的格式和模板管理 文档的一致性管理 文档的存储管理,8.2测试管理的基本内容,SQAP:软件质量保证计划,每个软件测试产品一个。 SVVP:软件验证和确认测试计划,每SQAP一个。 VTP:验证测试计划:每个验证活动一个。 MTP:主确认测试计划,每个SVVP一个。 DTP:详细确认测试计划,每个活动一个或多个。 TDS:测试设计规格说明,每个DTP一个或多个。 TCS:测试用例规格说明,每个TDSTPS一个或多个。 TPS:测试

10、步骤规格说明,每个TDS一个或多个。 TC:测试用例。每个TCS一个。,8.2测试管理的基本内容,由图8-1可以看出:每个软件产品都有一个软件质量保证计划,每个软件质量保证计划有一个软件验证和确认测试计划,软件验证和确认计划有一个主确认测试计划。 每个验证测试活动有一个验证测试计划,每个确认测试活动有一个或多个测试计划,每个测试计划有一个或多个测试设计规格说明,每个测试设计规格说明有一个或多个测试步骤规格说明,每测试设计规格说明测试步骤规格说明有一个或多个测试用例规格说明,每个测试用例规格说明有一个测试用例。,8.2测试管理的基本内容,VTR:验证测试报告。每个验证活动一个。 TPS:测试步骤

11、规格说明。 TL:测试记录。每测试期一份。 TIR:测试事故报告。每个事故一个。 TSR:测试总结报告。一个。,8.3 测试管理的原则,软件生存周期模型为我们提供了软件测试的流程和方法,为测试过程管理提供了依据。但实际的测试工作是复杂而烦琐的,不会有哪种模型完全适用于某项测试工作。 因此,应从不同的模型中抽象出符合实际现状的测试过程管理理念,依据这些理念来策划测试过程,以不变应万变。当然测试管理涉及的范围非常广泛,如测试组织管理、测试过程管理、测试文档管理、人力资源管理、风险管理、进度管理等等,,8.3 测试管理的原则,尽早测试 全面测试 全过程测试 迭代的测试,8.3 测试管理的原则,尽早测

12、试: 测试人员尽早参与软件项目,及时开展测试的准备工作,包括编写测试计划、制定测试方案以及准备测试用例等 尽早开展测试执行工作,即一旦单元模块完成代码编写就开展单元测试,一旦模块代码被集成为一个相对独立的子系统,便可以开展集成测试,一旦有软件系统提交,便可以开展系统测试工作,并对测试结果进行评估,8.3 测试管理的原则,全面测试: 对软件的所有产品进行全面的测试,包括需求规格说明分析、概要设计规格说明、详细设计规格说明以及源程序等 软件开发及测试人员应全面参与到测试工作中,8.3 测试管理的原则,全过程测试: 测试人员应充分关注软件开发过程,对开发过程的各种变化及时做出响应。例如开发进度的调整

13、可能会引起测试进度及测试策略的调整,需求的变更会影响到测试的执行等等 测试人员应对测试的全过程进行全程的跟踪,例如建立完善的度量与分析机制,通过对自身过程的度量,及时了解测试过程信息,调整测试策略。,8.3 测试管理的原则,迭代的测试: 瀑布模型在大量软件开发实践中也逐渐暴露出了许多缺点,其中最为突出的是该模型缺乏灵活性,无法通过开发活动澄清本来不够确切的软件需求,可能导致开发出的软件并不是用户真正需要的软件,只能进行返工或不得不在维护中纠正需求的偏差,给软件开发带来了不必要的损失。 为适应不同的需要,人们在软件开发过程中摸索出了螺旋、迭代等诸多模型,这些模型中需求、设计、编码工作可能重叠并反

14、复进行的,这时的测试工作也将是迭代和反复的。如果不能将测试从开发中抽象出来进行管理,势必使测试管理陷入困境。,8.4测试管理的实践,本节以一个构件化的ERP项目,说明其系统测试的几个关键过程管理。假设项目的前期需求不是很明确,开发周期相对较长,为了对项目进行更好的跟踪和管理,项目采用增量和迭代模型进行开发。 整个项目开发分三个阶段: 第一阶段实现进销存的简单功能和工作流; 第二阶段实现固定资产管理、财务管理,并完善第一阶段的进销存功能; 第三阶段增加办公自动化管理。每一阶段工作是对上一阶段成果的一次迭代和完善,同时加入新的功能。,8.4测试管理的实践,策划测试过程 需求分析 变更控制 度量与分

15、析 测试过程可持续改进,8.4测试管理的实践,策划测试过程 该系统的三个阶段具有相对的独立性,所以可采用“独立、迭代”的测试原则,对测试过程进行独立策划,以每一阶段完成所提交的阶段性产品作为系统测试准备的就绪点,在就绪点及时开展测试。 因此,在该系统开发过程中,系统测试组可开展三个阶段的系统测试,每个阶段系统测试具有不同的侧重点,目的在于更好地配合开发工作尽早地发现软件故障,降低软件成本。,8.4测试管理的实践,需求分析 本系统开发过程中,需求的获取和完善贯穿于每个阶段。对需求的把握很大程度上决定了测试能否成功。系统测试不仅仅要确认软件是否正确地实现要求的功能,还要确认软件是否满足用户的需要。

16、依据“尽早测试”和“全面测试”的原则,在需求获取阶段,测试人员就可参与到对需求的分析讨论之中。测试人员与开发人员及用户一起分析需求的完善性与正确性,同时从可测试性角度为需求文档提出建议。同时,测试人员结合前期对项目的了解,很容易制定出了完善的测试计划和方案,将阶段性产品的测试方法及进度、人员安排进行策划,使整个项目的进展有条不紊。 实践表明,测试人员尽早期参与到需求的获取和分析中,有助于加深测试人员对需求的把握和理解,提高需求文档的质量。在需求人员把握需求的同时,测试人员制定出早期测试计划和方案,及早准备测试活动,可大大提高测试效率。,8.4测试管理的实践,变更控制在软件开发过程中,变更往往是

17、不可避免的,变更也是造成软件风险的重要因素之一。依据“全过程测试”的原则,测试小组可以密切关注软件开发过程,根据进度计划的变更调整测试策略,依据需求的变更及时补充和完善测试用例。,8.4测试管理的实践,度量与分析 在ERP项目中,我们在测试过程中对不同阶段的故障数进行了度量,并分析测试执行是否充分。分析表明:相同时间间隔内发现的故障数量收敛状态。对不同功能点的测试数据覆盖率和发现的问题数进行度量分析,可以分析测试用例的充分性与故障发现率之间的关系。通过统计分析出测试数据与故障发现率之间的关系,可以及时调整测试用例编写策略,从而帮助测试人员判断测试成本和收益间的最佳平衡点。 实际上,度量是对测试过程进行跟踪的结果,是及时调整测试策略的依据。对测试过程的度量与分析能有效提高测试效率,降低测试风险。同时,度量与分析也是软件测试过程可持续改进的基础。,

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

当前位置:首页 > 学术论文 > 毕业论文

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