软件测试管理_第1页
软件测试管理_第2页
软件测试管理_第3页
软件测试管理_第4页
软件测试管理_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件测试管理软件测试管理张三目标 与软件企业项目管理人员、测试管理人员对测试管理进行交流。 提高对测试工作、测试管理的重要性的认识,以改进我们的测试过程。 从理论角度来认识软件测试和测试管理。主要内容 团队建设(组织结构、人员组成、规模、人员培训) 过程规划(软件过程、测试过程、测试的阶段、规划自己的过程) 测试过程实施(计划、设计、实施、执行、评估、缺陷跟踪) 过程改进(成熟度模型、改进) 测试工具(一)团队建设 测试部门的组织形式 测试组的人员组成 测试组的规模 测试人员的培训组织形式测试人员的位置一个好的组织结构,可以更好的发挥人员的能动性,使工作更有效率,也使工作的质量更高。在一个单位

2、内测试人员处于什么位置?属于那个部门?质量管理?开发组?测试组?适用的就是最好的。组织形式烟囱测试组 测试人员由临时人员组成,通常有2-5人组成,直接向项目经理负责。大型的组可以划分为几个小组,设测试经理。项目经理负责制定测试计划文档。企业没有正规的方法将测试程序、方法、相关的知识经验传递下去,测试质量难以保证。优点是成本低,不需要对测试人员提供培训、生活保障等服务。组织形式企业或项目组织结构样例 项目组织产品组经理项目经理开发经理质量保证经理开发工程师测试人员流程经理设计经理组织形式企业或项目组织结构样例 一种常见的组织软件开发组织客户服务项目管理质量管理开发规范、CMM、质量保证测试组织形

3、式企业或项目组织结构样例 又一软件开发组织客户服务项目管理质量管理开发规范、CMM、质量保证测试人员组成测试组组成 测试经理:负责测试流程、沟通、测试工具的引入、人员管理、测试计划/设计/开发及执行。 测试组长:沟通、测试工具引入、人员管理、费用/过程状态报告、测试计划/设计/开发及执行。 测试工程师:执行测试计划,进行设计/开发及执行。测试组规模影响因素 企业文化或测试成熟度 测试需求范围 工程师技能水平 测试工具及应用水平 业务知识 组织形式 测试工作介入时间测试组规模确定方法(一) 开发比例法:根据开发人员数量按照一定比例来确定测试工程师的数量。开发人员指进行设计、开发、编译以及进行单元

4、测试的人员。测试组规模确定方法(二) 百分比法:根据测试人员应该占到项目组中人员的百分比数量。测试组规模确定方法(三) 测试程序法:根据测试程序数量,以及每个程序可能的执行时间,计算出人小时,再根据完成周期计算测试组规模。测试组规模确定方法(四) 任务计划法:根据历史记录中类似项目工作量,比较新项目同历史项目的工作量,历史项目乘以相应的因子。 步骤:先将任务分解,根据历史记录乘以一个因子,计算出新项目的所以任务工作量。再根据该工作量和完成周期计算测试组规模。人员培养人员要求 适应各种环境的知识背景 学习速度快 组织能力 解决问题的能力 创造性 分析/编程能力 业务领域的知识 交流与协调能力 测

5、试经验 关注细节 书写与语法技能一个好的测试人员一个好的测试人员更难得更难得人员培养成长的路径 初级测试工程师测试工程师高级测试工程师测试组负责人测试负责人测试经理产品/业务经理。 技术技能:测试工具测试自动化编程编程语言操作系统网络、数据库测试生存周期 (1-2年)年) 测试过程:评审、制订和改进过程,指导初级工程师工作,了解业务领域。 (3-4年)年) 测试组工作:任务安排、跟踪和报告,监管测试工程师,掌握测试周期支持工具。(4-6年)年) 项目管理:管理项目,与客户交流,管理测试人员。(6-12年)年) 产品管理:项目或产品研发指导、促进产品销售、确定业务机会、承担盈亏责任。(12年以上

6、)年以上)(二)测试过程规划 软件过程 测试过程 测试的阶段 规划测试过程软件过程定义 目的:测试过程是软件过程的组成部分,明确自己的软件过程,才能明确自己的测试过程。 软件生存周期指软件从出现一个构思之日起,直到最后决定停止使 用之时止。包括可行性与计划研究、需求分析、设计 、实现 、测试、运行与维护等阶段。 软件过程是指开发和维护软件及相关产品(如项目计划、文档、代码、手册等)的一套行为、方法、实践及变换过程。软件过程是软件生存周期的框架。软件过程常见软件过程与模型(一) 瀑布模型、原型模型、演化模型、增量模型、螺旋模型、喷泉模型等等。 敏捷方法(如XP、功能驱动等) 统一过程(RUP)

7、GB/T 8566-2001 信息技术 软件生存周期过程 过程裁减 7 .生 存 周 期 组 织 过 程 5 .生 存 周 期 基 本 过 程 合 同 视 图 5 .1 获 取 过 程 招 标 准 备 启 动 合 同 准 备 和修 订 验 收 和 完 成 监 督 供 方 5 .2 供 应 过 程 启 动 准 备投 标 签 定合 同 编 制计 划 实 施 和控 制 交 付 和完 成 评 审 和评 价 工 程 视 图 5 .3 开 发 过 程 软 件 需求 分 析 软 件 结构 设 计 软 件 详细 设 计 软 件集 成 软 件 鉴定 测 试 系 统 需求 分 析 系 统 结构 设 计 系 统集

8、成 系 统 鉴定 测 试 过 程实 施 软 件安 装 软 件 验收 支 持 软 件 编 码 和 测 试 运 作 视 图 5 .4 运 作 过 程 过 程实 施 运 行测 试 系 统运 行 用 户支 持 5 .5 维 护 过 程 过 程实 施 修 改实 施 移 植 问 题 和 修改 分 析 维 护 评 审/ 验 收 软 件 退 役 6 .生 存 周 期 支 持 过 程 6 .1 文 档 编 制 过 程 6 .2 配 置 管 理 质 量 管 理 视 图 6 .3 质 量 保 证 过 程 6 .4 验 证 过 程 6 .5 确 认 过 程 6 .6 联 合 评 审 过 程 6 .7 审 核 过 程

9、6 .8 问 题 解 决 过 程 7 .2 基 础 设 施 过 程 管 理 视 图 7 .1 管 理 过 程 启 动 和 范 围 定 义 执 行 和 控 制 评 审 和 评 价 结 束 规 划 7 .3 改 进 过 程 7 .4 培 训 过 程 过 程 建 立 过 程 评 估 过 程 改 进 各 项 活 动 的 位 置 顺 序 并 不 意 味 时 间 顺 序 。 开 发 过 程 中 的 活 动 名 称 并 不 是 开 发 阶 段 的 名 称 。 软件过程常见软件过程与模型(二) 敏捷方法中的测试:在极限编程中提出测试驱动开发。提倡在开发前,先考虑测试,先完成测试用来和代码。 统一过程中的测试:

10、测试是其核心工作流程之一 GB/T 8566-2001标准中的测试(如下图): 没有单独的测试过程。 测试开始于编码。 不足以指导测试工作。测试过程测试生命周期 维护 需求定义应用定义应用开发 修订 建立 建立执行. 执行执行.测试计划缺陷跟踪测试开发测试设计评估测试过程几个亮点 测试工作开始于需求分析之后。 测试经过评估后,达到了结束的标准后才能结束。 测试也是迭代过程。 测试需求来自于软件需求。测试过程活动 计划 设计 准备 执行 评估 缺陷跟踪测试过程与开发过程的关系 都是软件过程的有机组成部分。 与开发过程同步进行。 与开发过程相互依赖,又相互独立。 开发过程、测试过程、项目管理过程以

11、及其他支撑过程相互交织共同组成了软件过程。测试阶段V模型测试阶段四个阶段 清晰直观 阶段划分 单元测试 集成测试 系统测试 验收测试 同开发的对应关系测试阶段甄别 开发和测试并不是线性关系。 测试工作不是开始于代码完成之后。 测试具有阶段性,但各阶段之间没有鸿沟。尤其是单元测试和集成测试。规划测试过程 分析项目总体需求(概览) 分析项目特点(如类型、规模、人员、客户、风险、进度、成本等等) 确定自己的软件过程 确定自己的开发方法和模型 规划测试阶段 构建测试过程(三)测试过程实施 制订测试计划 设计测试 测试准备 执行测试 评估测试结果 缺陷跟踪制订测试计划定义 什么是测试计划:测试计划测试计

12、划包含项目范围内的测试目的和测试目标的有关信息。此外,测试计划还将确定实施和执行测试时所使用的策略以及所需资源。测试计划包括测试主计划和阶段计划。 项目开始时制订测试主计划。根据开发的迭代过程和测试主计划对测试计划进行细化,制订各个阶段的测试计划。 制订测试计划内容 1. 简介(目的、背景、范围、使用的文档) 2. 测试需求(确定被测试的对象、内容和范围,来源于用户需求,包括功能性需求和非功能性需求。) 3. 测试策略 测试的项目、测试的主要方法、完成标准、使用的工具、特殊事项等) 4. 资源(人员组成、任务和职责、环境、人员培训等) 5. 项目进度表(阶段) 6. 可交付工件(测试模型、测试

13、记录、缺陷报告等等) 7. 附录 A:项目任务制订测试计划步骤(一) 确定测试需求:确定测试对象以及测试工作的范围和内容。测试需求应是可核实的。测试需求可来源于软件需求列表、用例、用例模型、用例实现、补充规约、设计需求、商业理由、法规、标准、最终用户访谈以及对现有系统的复审。 被确定的测试需求项必须是可核实的。即,它们必须有一个可观察、可评测的结果。无法核实的需求不是测试需求。 制订测试计划步骤(二) 评估风险:测试工作需要平衡资源约束和风险,以确定测试的优先级。从三个方面分析: 影响:失效后将造成的影响或后果 原因:失效所导致的非预期结果 可能性:用例失效的可能性 根据风险分析情况,确定测试

14、执行的优先级。通常分为高、中、低三种。进而安排测试的先后顺序。制订测试计划步骤(三) 制定测试策略:描述测试活动的一般方法和目标。包括测试的阶段、类型、技术、测试完成的标准、特殊要求、可能存在的影响等。 确定资源 人力资源(人员数量和技能) 测试环境(包括硬件和软件) 工具 数据 创建时间表:估计测试工作,制订时间进度。参考软件开发进度、项目工作计划等。 生成测试计划 :复审相关材料,确定交付的内容,将计划提交相关的人员。制订测试计划主计划和阶段计划 阶段计划的测试需求应是对主计划中的测试需求的分解。 阶段计划的工作进度安排应尽可能同主计划相一致。 阶段计划的制订应能保证主计划能够完满执行。测

15、试设计(一) 分析程序工作流程。目的在于确定并说明系统与外部交互时的操作和步骤。以进一步用于确定与描述测试用例。 确定并说明测试用例 详细分析应用程序工作流程与操作步骤。 确定并说明测试用例 确定测试用例数据测试设计(二) 确立并结构化测试执行过程 确定本测试执行过程与其他测试执行过程(或生成的测试脚本之间)的关系或顺序。 确定本测试执行过程的起始条件/状态与结束条件/状态。 指明本测试执行过程(或生成的测试脚本)要执行的测试用例。 结构化的方式固化测试执行过程。测试设计(三) 复审并评估测试覆盖 确定测试覆盖评测方法:基于代码覆盖和基于需求的覆盖。基于代码覆盖的方法只有在代码完成后才能进行。

16、 生成测试覆盖报告测试准备 记录、生成或通过编程创建测试脚本 确定软件设计与实施模型中的专用于测试的功能。 建立外部数据集 桩模块与驱动模块设计 执行前的准备工作执行测试 单元测试和集成测试时有开发人员的参与可能更有效,但应避免开发人员测试自己的程序。 验收测试应由测试组、用户和相关的专家完成。 测试的执行应该遵循如下的过程:设置测试环境,执行测试过程,核实测试结果,评估测试的执行情况。评估测试结果 分析测试结果并提交变更请求 评估基于需求的测试覆盖 评估基于代码的测试覆盖 分析缺陷 确定是否达到了测试的完成标准和成功标准 生成测试评估摘要 缺陷跟踪 缺陷等级(严重、主要、次要、轻微等)与优先

17、级(高、中、低等)分类 缺陷修改应遵循一定的流程(提交任务分配修改回归测试) 缺陷趋势分析 不易修改的缺陷的处理配置管理主要实现软件版本控制和软件变更管理测试过程中形成的文档、用例、数据、测试用程序等也存在配置管理的问题应和开发中的配置管理共同进行,并互相关联。过程改进测试能力成熟度模型初始 阶段定义 集成 管理与度量优化、缺陷预防和质量控制过程改进测试能力成熟度等级一 无序 测试和调试没有区分 测试只在编码后进行 无专业的测试人员/没有测试工具 测试的目的是为了证明软件和系统能够正常工作。过程改进测试能力成熟度等级二 将测试同调试区分开来 测试是编码后的一个已定义的阶段 具有基本的测试方法和技术以及标准的测试过程 测试的目的是为了确认程序能够满足要求过程改进测试能力成熟度等级三 测试分布于软件的整个生命周期 有固定的测试组织(能够提供人员培训、监督和控制测试过程、引入自动化测试工具) 基于系统需求进行测试 管理层已认识到测试是一项专业性的活动过程改进测试能力成熟度等级四 测试是一个可测量和量化的过程 产品的质量特性如可靠性、可用性、可维护性等都被测试 测试用例被良好

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论