软件文档写作12-管理.ppt

上传人:sh****n 文档编号:7531908 上传时间:2020-03-22 格式:PPT 页数:21 大小:336.50KB
返回 下载 相关 举报
软件文档写作12-管理.ppt_第1页
第1页 / 共21页
软件文档写作12-管理.ppt_第2页
第2页 / 共21页
软件文档写作12-管理.ppt_第3页
第3页 / 共21页
点击查看更多>>
资源描述
1 7 3软件测试计划和测试报告软件测试是软件开发完成 投入运行前 对软件需求 设计规格说明和编码的最终复审 软件质量保证的关键步骤 在软件开发的整个过程中 占有极为重要的位置 软件测试文档主要包括 测试规划 测试策略 测试手段和测试结果 由于测试工作的重要性 而人工测试又特别困难 因此 测试过程自动化会是测试技术发展的方向 1 软件测试 软件检查和调试我们已经知道软件测试的目的是尽可能多的发现系统存在的错误 所以 软件测试包括软件检查与软件测试 软件检查 对系统的各种表达形式 如文档 设计图和程序源代码等进行分析 检查 这一工作应贯穿整个开发过程 软件测试 使用测试数据对软件的实现进行运行检查 查看系统的输出及运行行为是否符合设计要求 由安博测试空间技术中心 2 下图表示了软件检查和软件测试在软件过程中的位置 从图中可以看出 软件检查贯穿整个软件过程 而软件测试仅对原型或软件程序 软件调试是一个对缺陷定位和修改的过程 同时也是一项技巧性很强的工作 软件调试 从软件测试的结果开始 如图所示 3 2 软件测试的成本由于测试不可能穷尽 因此 就有了软件测试的一个致命缺陷 即测试的不完全 不彻底性 因此 对于任何程序只能进行少量的测试 当发现错误 可以说明程序有问题 而未发现错误 却不能声称程序没有错误 根据软件工程的基本原理 当测试标准越高 则将要投入的人力 财力也越高 左图反映了测试成本的变化规律 为在软件质量和投入之间取得需求平衡 可以采用著名的 进度 成本 质量 三角公式 如下右图 即只要确定了其中两项 就可以确定第三项 因此 在编制软件测试计划时 必须考虑三者之间的关系 4 3 软件测试的原则测试时 如果成功地实施了测试计划和方案 就能够发现系统中尽量多的错误 测试的一个附带收获是 能够证明软件的功能和性能是与需求说明相符的 要达成上述要求 就需要遵守以下原则 1 测试规划应包含测试工作的全部内容 即不仅是程序测试 还包括文档 2 测试应贯穿软件开发的整个过程 即坚持各个阶段的评审 杜绝隐患 3 测试用例应包括输入和预期输出 4 设计测试用例时 输入应包括合理的和不合理的数据 5 功能测试应由独立第三方完成 但调试仍应由开发者自己完成 6 充分注意并利用测试中的群集现象 7 严格执行测试计划 排除测试随意性 计划应明确规定 不随意解释 8 应当对每一个测试结果做全面检查 仔细分析测试结果 防止错误遗漏 9 妥善保存测试计划 测试用例 出错统计和最终分析报告等测试文档 5 4 软件测试过程从程序测试的角度看 测试分为两个阶段 如图 程序测试过程的目的是尽可能多的发现并改正错误 提高软件质量 测试过程的每一个阶段也都会对前一阶段有反馈信息 因此 测试过程是一个不断修正和进化的过程 其阶段划分如下图所示 测试过程需要下面三个基础数据和资料的支持 软件配置 软件正常运行的环境配置 测试配置 软件测试运行的环境配置 是软件配置的子集 测试工具 为提高测试效率 降低测试劳动强度 保证测试质量使用的工具 6 5 测试计划的导出与结构测试计划应该从系统描述和设计中导出 下图是测试计划从系统描述和设计中导出示意图 测试计划的主要组成部分如右表所示 7 6 几种常见的测试用图表工具 1 检查表检查表是一张标明了所要检查项目和内容的表格 可以用来突出重点和总结整个过程的关键点 优点是简洁 清晰 典型的检查表如需求检查表 系统结构检查表 代码结构检查表 共性缺陷检查表等 检查表因其重要性 目前已实现了自动化和智能化 如IBMRochester软件开发中的PTF programtemporaryfix 程序临时修补 检查表 2 Pareto图一个按下降次序排列的频率竖条图 通常 X轴表示缺陷产生的原因 Y轴表示缺陷数 下图就是一个软件产品缺陷原因的Pareto图 8 3 直方图是一种样本或总体的频率计数的图形表示 X轴自左至右按上升序列出某一个参数的单位间隔 Y轴为频率计数 直方图常用来表示某一参数的分布特性 如下图是一个软件产品按不同严重程度的缺陷频率和缺陷报告提交的天数直方图 9 10 7 设计软件测试 1 缺陷测试设计下图是缺陷测试的一般模型 其中 需要设计测试用例 给出测试预期结果 测试用例是对测试需要的输入和当前测试内容的描述 运行结果需要和测试预期结果比较 以获得测试是否通过的结论 理想的测试是使每个可能的程序运行顺序都能无遗漏的得到测试 然而这是不可能的 因此 测试需要基于一个可能的测试用例子集 制定和设计一个测试子集的选择策略 11 黑盒测试黑盒测试是将系统作为一个黑盒子 只通过系统输入 观察其相应的输出 来确定系统功能是否符合需求规格说明书的定义 因此 黑盒测试又称功能测试或数据驱动测试 黑盒测试的系统模型如下图 黑盒测试方法即适合功能构成的系统 也适合对象构成的系统 测试的关键是要设计出有极大可能落在导致系统反常的输入数据集合中的那些输入 使用下表可以组织黑盒测试方法的输入和输出 12 等价划分黑盒测试的一种方法 等价划分的测试方法就是把程序的输入域划分成若干不同性质得到的集合 在这些集合中 程序有基本一致的行为表现 然后从每个集合中选取少量有代表性的数据作为测试用例 下图就是等价划分测试的模型 等价划分方法测试用例的设计要经历划分等价类和选取测试用例两步 等价类的划分可以使用等价类表描述 确定测试用例则需要根据等价类表 按以下3个步骤进行 为每个等价类规定唯一编号 设计一个测试用例 使其尽可能多的覆盖尚未覆盖的有效等价类 重复该步 设计测试用例 逐一覆盖所有无效等价类 13 结构化测试结构化测试是一种根据软件结构知识和实现知识所进行的测试方法 结构化测试也成为白盒测试 结构化测试的过程如下图所示 结构化测试除了用于单元测试外 一般适合用于相对较小的程序 如一个子程序或对象的一个操作等 结构化测试是通过代码分析来估计需要多少测试用例 以保证测试过程中 程序或组件中所有语句都至少遍历一遍 路径测试是结构化测试的一种策略 即在程序控制流程图的基础上 通过分析控制构造的环路复杂性 导出基本可执行路径集合 从而设计测试用例 而设计出的测试用例要保证在测试中程序的每一个可执行语句都能至少执行一次 在面向对象的程序开发过程中 路径测试在测试对象中的方法时 常会用到 程序中的路径数量通常与程序的长度成正比 14 2 集成测试设计集成测试开始于系统组件 子系统或完整系统的组装完成时 其目的是发现组件交互中的问题 集成测试的主要困难是在测试过程中对发现的错误的定位 一个好的方法是采用所谓的增量法 即先从一个集成度最小的系统配置开始测试 完成后一个增量一个增量的增加配置 然后逐步完成系统完整配置的测试 下图就是增量化集成测试的例子 15 自顶向下的和自底向上的测试是两种不同的测试策略 在自顶向下的集成中 系统的高层组件在系统设计和实现完成之前进行集成和测试 如下图所示 在自底向上的集成中 低层组件在高层组件开发出来之前进行集成和测试 如下图所示 16 接口测试当模块或子系统被集成时 就有一个事先定义的接口供其它组件调用 接口测试的目的就是检测因接口错误或对接口进行的无效假设而造成的系统缺陷 下图就是对接口测试的示意图 图中 指向方块边界的箭头表示测试用例不是只针对单个组件的 而是对组件构成的整个子系统的 接口错误是对象之间交互的结果 而不是出于单个对象的行为 因此 接口错误是不可能通过对单个对象的测试发现的 这种测试形式非常适合面向对象的系统 强度测试系统被完全集成后 就可以进行总体性能测试了 为性能测试所设计的测试用例要保证能够测试到系统的正常负荷 通常 要设计出一系列的测试 使得系统的测试负荷能稳步上升 直到系统达到性能极限 然后 强度测试继续使用测试用例测试 直到系统失败 这类测试有两个作用 检查系统的柔性 可能模拟到正常情况下的不寻常组合 以暴露系统正常情况下不会暴露的缺陷 17 3 面向对象的测试尽管前面介绍的测试方法能够用于面向对象程序的测试 但是面向对象的测试还具有自己的另外一些特点 面向对象的单元测试以往单元测试的方法可继续沿用 实际测试类成员函数 对象的完全覆盖测试应包括 对象中所有操作被单独隔离的测试 对象中所有属性的设置和访问的测试 对象中所有可能状态的测试如果使用了继承 则对类的测试应延伸到所有子类所继承的操作 面向对象的集成测试由于面向对象程序中 类相互依赖极其紧密 根本无法在编译不完全的程序上对类进行测试 所以 面向对象的集成测试通常需要在整个程序编译完成后进行 此外 面向对象程序具有动态特性 程序的控制流往往无法确定 因此也只能对整个编译后的程序做基于黑盒的集成测试 面向对象的集成测试能够发现相对独立的单元测试无法检出的那些类相互作用时才会产生的错误 具体设计测试用例 可参考以下步骤 选定检测的类 列出类的状态 行为 传递的消息 及输入 输出的界定等 利用结构关系图确定待测类的所有关联 确定覆盖标准 根据程序中类的对象构造测试用例 确认输入 服务和期望产生的行为等 18 8 软件测试计划文档测试计划起到测试工作过程框架结构的功能 是好的测试工作的基础 一个测试计划的基本内容包括 基本情况分析 测试需求说明 测试策略和记录 测试资源配置 问题跟踪报告 测试计划的评审等 基本情况分析 包括系统运行平台 应用领域 特点和主要功能模块等 分析要点有 测试目的和侧重点 系统适合于测试的内容 操作划分 测试的潜在风险 系统与测试相关的资料说明 测试需求说明 列出测试功能项 规定应该测试的具体内容 测试策略和记录 描述如何开展测试 规定测试记录的内容 必要时 应给出测试记录文档的模板 测试资源配置 针对测试项目的每一个阶段任务 列出所需要的资源 可能的话 给出可能更新需要的空间 问题跟踪报告 报告包括问题的发现者和修改者 问题发生的频率 发现问题的测试用例 以及明确问题产生时的测试环境 问题描述应尽可能是定量 分门别类的列举 问题分为 严重问题 一般问题 建议问题 测试计划的评审 为确保软件的质量 达到软件工程的度量标准 规范测试过程 有必要设计一个测试计划模板 以便减少遗漏 使测试计划趋于完善 正确的方法是 参照国际 国家标准 制定详细的软件测试计划 并在计划实施前 认真负责的对测试计划文档进行评审 19 9 软件测试报告软件测试结束后 需要对测试结果进行分析 以发现和提取有意义的信息 得出软件测试报告 测试报告必须是客观的 正确的 测试报告是技术部门与产品部门沟通的主要手段 测试报告直接影响软件缺陷的修改速度 在评价测量时 经常使用的有3种尺度来描述软件的质量 以反映不同的级别 标称尺度 顺序尺度 区间尺度和比例尺度 它们的级别依次递增 但每个高级别尺度都具备低级尺度的所有属性 标称尺度 其实质是一种分类 根据某个属性将元素划分为不同的类别 如 软件可以分系统软件 支撑软件 应用软件等 顺序尺度 将主题按顺序进行比较的测量操作 通过顺序尺度 可以将主题分为不同的类别 同时可以将类别排序 如 A B C 区间尺度和比例尺度 区间尺度可以表示测量点之间的精确差值 如 软件产品A的缺陷率是每千行代码5个缺陷 产品B的缺陷率是3 5个缺陷 则可以精确地说 A比B的缺陷率每千行代码高出1 5个缺陷 如果在区间尺度中可以定位绝对的或非随意的零点值 它就成了比例尺度 大多数应用场合中 区间尺度都表现为比例尺度 在测试报告中 还有几个常用的基本测量数据被用于分析测试数据 比 比例 百分比和比率 测试报告的样例和基本内容见下页 20 测试报告样例 21 测试报告的基本内容 介绍GB8567 88 测试计划模板
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!