测试大型软件的过程.pptx_第1页
测试大型软件的过程.pptx_第2页
测试大型软件的过程.pptx_第3页
测试大型软件的过程.pptx_第4页
测试大型软件的过程.pptx_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

更高级别的测试 测试大型软件的过程 软件开发与测试 要结束整个测试任务 除模块测试外 还要进行其他更深入的测试 我们称之为 更高级别的 测试 软件开发过程在很大程度上是沟通有关最终程序的信息 并将信息从一种形式转换到另一种形式 因此 绝大部分软件错误都可以归因为信息沟通和转换时发生的故障 差错和干扰 下图为软件开发过程的各个阶段 软件开发过程 该软件产品要实现的目标 非常笼统 该软件产品要实现的具体目标 相对于需求更为具体 对软件的能力 容量 强度 易用性等进行说明 从用户角度对程序行为的精确描述 为后续设计阶段提供输入 有明确的输入输出规范 越来越明确 详细的规定了程序是如何建立起来的 这两个环节基本上都是从用户方沟通的一手材料 并不精确但价值非凡 要预防和识别这些错误 可以使软件开发过程更精密 在每个阶段结束时可以引入一个独立的验证过程 对不同的开发阶段采用不同的测试方法进行验证 不同的测试过程针对一类特定的错误 软件开发与测试 开发过程与测试过程 功能测试 功能测试是一个试图发现程序与其外部规格说明之间存在不一致的过程 除了很小的程序 功能测试通常是黑盒测试在进行功能测试时 需要对规格说明进行分析以获取测试用例集 等价类划分 边界值分析 判定表 因果图 错误猜测等方法尤其适合功能测试要应用测试的原则 如1 发现错误越多的功能 可能存在错误的可能性就越大 2 对测试用例的预期结果应该有明确定义 3 要对无效输入给予重视 系统测试 系统测试的目的是将系统或程序与其初始目标进行比较 这意味着系统测试并不局限于系统 系统测试是一个试图说明程序作为一个整体是如何不满足其目标的过程如果产品没有一组书面的 可度量的目标 系统测试也无法进行 系统测试并非是测试整个系统的功能 功能测试 系统测试用例不能以规格说明为基础 也不能以目标文档作为基础 其中不包含对程序外部接口的准确描述 可以分析目标文档来设计系统测试 而分析用户文档来阐明测试用例 目标文档例 如DISPLAY命令的目标如下 该命令用来从终端查看主存储空间中的内容 总目标 其语法应与所有其他系统命令的语法相一致 能力 用户可以通过一个地址范围或者一地址加上一数值来定义空间范围 能力 该命令操作符应具有合理的默认值 易用性 命令的输出可以分多行显示多个字 十六进制形式 字与字之间以空格相隔 每一行须包含该行第一个字的地址 能力 该命令是条 不太重要的 指令 意味着其在合理的系统负载下 应在两秒之内开始显示输出 输出各行之间不应有可觉察的延时 性能 命令处理器中发生的编程错误在最坏情况下可能导致该命令失效 而系统以及用户交互则不应受到影响 强度 系统投入使用后 命令处理器中包含的用户发现的错误不应超过一个 可靠性 系统测试的类型 系统测试没有特定的技术和方法 但可以根据不同类型的测试来考虑测试用例的设计 包括 能力测试 容量测试 强度测试 易用性测试 安全性测试 性能测试 存储测试 配置测试 兼容性 配置 转换测试 安装测试 可靠性测试 可恢复性测试 适用性测试 文档测试 过程测试不是所有这些类型都适用于任何程序 软件 但为了避免有所遗漏 设计测试用例时应该考虑所有类型 系统测试的类型 cont 能力测试判断目标文档提及的每一项能力 以区别功能测试中的 功能 是否都确实已经实现 通常是通过人工检查目标文档中定义了 要做什么 容量测试是程序经受大容量数据的检验 目的是证明程序不能处理目标文档中规定的数据容量 容量测试需要大量的资源 不可进行过多 如使操作系统的作业队列达到饱和容量 强度测试使程序承受高负载或强度的检验 所谓高强度是指在很短的时间间隔内达到的数据或操作的数量峰值 要与容量测试相区分 强度测试涉及时间因素 适用于在可变负载下运行的程序以及交互式程序 实时程序和过程控制程序 基于Web的应用程序也是最常接受强度测试的软件之一 如 1 在很短的时间内是操作系统的作业队列达到峰值 2 web应用程序要处理一定容量的并发用户 注 强度测试是对强度的界定很重要 系统测试的类型 cont 系统测试的类型 cont 易用性测试每个用户界面是否都根据用户的智力 教育程度和环境要求进行了调整 程序的输出是否有意义 不模糊且无计算机杂乱信息 错误诊断信息是否直接 非计算机专业用户是否能够理解 这要求对错误进行精确的预测和详细的分类 整体的用户界面是否在语法 惯例 语义 格式 风格和缩写等方面展现出了相当程度的完整性 一致性和同一性 系统是否包含过多或不太可能用到的选项 对于所有输入 系统是否返回了即时确认信息 程序是否易于使用 如区分大小写的要求用户是否清楚 不同层次菜单之间的浏览是否容易等 系统测试的类型 cont 安全性测试设计测试用例来突破程序安全检查 例如可以设计测试用例来规避操作系统的内存保护机制 破坏数据库管理系统的数据安全机制等 常用的测试用例设计方法是研究类似系统中已知的安全问题 然后生成测试用例 暴露被测系统中的类似问题基于Web的应用程序常常比绝大多数程序所需的安全测试级别更高 对于电子商务网站尤其如此 性能测试很多软件都有特定的性能或效率目标 这些特性描述为在特定负载和配置环境下程序的响应时间和吞吐率 应设计测试用例来说明程序不能满足其性能目标 系统测试的类型 cont 存储测试软件偶尔会有存储目标 例如描述程序使用的内存和辅存的容量以及临时文件或移出文件的大小 应设计测试用例来证明这些存储目标没有得到满足 配置测试很多软件都支持多种硬件配置 可以运行在多种操作系统下 使用多种web浏览器 通常可能的配置数量非常之大 以至于无法全面测试 但应该尽可能测试各种配置 系统测试的类型 cont 兼容性 配置 转换测试很多软件不是全新的 而是为了替换某些已有的系统 这样的软件往往涉及与已有系统的兼容以及从已有系统的转换过程 如升级数据库管理系统 安装测试有些软件的安装过程非常复杂 测试安装过程是系统测试的一个重要部分 可靠性测试所有测试都是为了提高软件的可靠性 但如果软件的目标中包含了对可靠性的特别描述 就必须设计专门的可靠性测试用例 适用性测试对于软件的适用性和可维护性目标也必须测试 系统测试的类型 cont 可恢复性测试诸如OS DBMS等软件通常都有可恢复性目标 说明系统如何从硬件失败和数据错误中恢复过来 系统测试的一个目标是证明这些恢复机制不能正确发挥作用 可以故意将程序错误植入个系统中 判断系统是否可以从中恢复 这些系统的设计目标之一是平均恢复时间 MTTR 最小 测试目标之一就是证明系统不能满足MTTR的要求 文档测试系统测试也需要检查用户文档的正确性和清晰性 过程测试很多软件系统不是完全自动化的 其中包括了很多人员操作过程 在系统测试中 必须对所有已规定的人工过程 如系统操作员 最终用户 数据库管理员的操作过程进行测试 系统测试的执行 系统测试执行的一个最关键的考虑是决定由谁来执行测试不能由程序员来进行系统测试执行系统测试的人思考问题的方式必须与最终用户相同 必须充分了解最终用户的态度和使用环境以及程序的使用方式 理想的人员组成 专业的系统测试专家 最终用户代表 人类工程学工程师 程序的主要分析人员或设计人员 在所有的测试阶段之中 这时唯一一个明确地不能由负责该程序开发的机构来执行的测试软件开发机构的心理有悖于测试活动的目标至少应该由很少受开发机构左右的独立人群来执行独立的测试机构 验收测试 验收测试是将程序与其最初的需求及最终用户当前的需要进行比较的过程通常是由程序的客户或最终用户来进行 一般不认为是软件开发机构的职责最好的方法是设计测试用例 尽力证明程序没有满足合同要求 假如这些测试用例都通过了 就可以接受该程序 安装测试 安装测试安装测试不同于其他测试 它的目的不是发现软件的错误 而是为了发现在安装过程中出现的错误 安装过程中会发生很多事件 例如用户必须选择大量的选项 必须分配并加载文件和库 必须进行有效的硬件配置 可能要求网络连接其他软件 等等安装测试应该由生成软件系统的机构设计 作为软件的一部分来发布 在系统测试完成之后进行 测试用例要检查已选的选项集合互不冲突 系统的所有部件都存在 所有文件已创建并包含必需内容 硬件配置妥当等等 测试的计划与控制 计划是管理测试过程中至关重要的一环 良好的测试计划中应包括 目标 定义每个测试阶段的目标结束准则 制订准则规定每个测试阶段何时可以结束进度 每个阶段的时间表 何时设计 编写和执行测试用例责任 每个阶段应确定由谁负责设计 编写和执行测试用例 谁负责修改发现的软件错误测试用例库及标准工具 需要使用的测试工具 何时 如何使用计算机时间 每个测试阶段所需的计算机时间硬件配置 描述需要的特别的硬件配置或设备集成 定义程序如何组装在一起 如自顶向下的增量测试跟踪步骤 调试步骤回归测试 对程序作了功能改进或修改之后进行回归测试 目的是判断程序的改动是否引起了程序其他方面的退步 通常是重新执行测试用例集的某个子集 测试结束准则 典型的无用准则用完了安排的测试时间后执行完了所有测试用例都未发现错误较有用的3类准则根据特定的测试用例技术来定义准则例如规定通过了某些来源的所有测试用例后结束以确切的数量来描述结束测试的条件需要预测一些数量 程序错误总数 可能发现的错误比例 错误产生和被发现的阶段经验数据在测试过程中记录每单位时间内发现的错误数量 通过检查统计曲线的形状 决定是继续该阶段的测试还是结束它并开始下个测试阶段 测试结束准则 最佳的测试结束准则是上述3类的组合模块测试 最佳的准则是1 应该要求使用一系列具体的测试用例设计方法 功能测试和系统测试 结束准则可能是发现了

温馨提示

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

评论

0/150

提交评论