




已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章黑盒测试的实用技术黑盒测试技术是软件测试的主要方法之一 黑盒测试的基本概念 方法 操作步骤 工具等内容是必须掌握的 本章重点讨论以下内容 软件测试技术研究组 中国信息大学 黑盒测试的基本概念 黑盒测试方法 黑盒测试的原则 策略和方法的选择 黑盒测试步骤 软件测试技术研究组 中国信息大学 3 1黑盒测试的基本概念黑盒测试 Black BoxTesting 又称为数据驱动测试或基于规格说明的测试 黑盒测试就是把程序看作一个不能打开的黑盒子 不考虑程序内部逻辑结构和内部特性的情况下 测试程序的功能 测试者要在软件的接口处进行 它只检查程序功能是否按照规格说明书的规定正常使用 程序是否能接收输入数据而产生正确的输出信息 以及性能是否满足用户的需求 并且保持数据库或外部信息的完整性 通过测试来检测每个功能是否都能正常运行 因此黑盒测试又可称为从用户观点和需求进行出发的测试 软件测试技术研究组 中国信息大学 由于黑盒测试不考虑程序内部结构 只关心软件的功能 所以许多高层的测试如确认测试 系统测试 验收测试都采用黑盒测试 在设计黑盒测试用例可以和软件实现同时进行 因此可以压缩整个测试的时间 黑盒测试主要是为了发现以下几类错误 是否有不正确或遗漏的功能 界面是否有错误 在接口上 输入能否正确地接受 能否输出正确的结果 软件测试技术研究组 中国信息大学 是否有数据结构错误或外部数据库访问错误 性能上是否满足要求 初始化或终止性错误 从事黑盒测试的技术人员 从概念上需要注意下述内容 软件测试技术研究组 中国信息大学 3 1 1黑盒测试的优点和缺点1 黑盒测试的优点 从产品功能角度测试可以最大程度满足用户的需求 相同动作可重复执行 最枯燥的部分可由机器完成 依据测试用例针对性地找寻问题 定位更为准确 容易生成测试数据 将测试直接和程序 系统要完成的操作相关联 软件测试技术研究组 中国信息大学 2 黑盒测试的缺点 代码得不到测试 如果规格说明设计有误 很难发现 测试不能充分的进行 结果取决于测试用例的设计 软件测试技术研究组 中国信息大学 3 1 2黑盒测试人员的要求黑盒测试只关心软件的外部功能和界面表现 不接触代码 为了保证测试工作顺利进行 在合理的时间内完成测试 发现软件系统的缺陷 掌握测试用例的书写 保证测试结果的可靠性 在对黑盒测试人员的选择和要求也要符合一定的标准 掌握测试思想和常规测试流程 了解产品的需求和功能 掌握测试用例的书写 有一定的软件开发和测试经验 软件测试技术研究组 中国信息大学 3 1 3黑盒测试的意义黑盒测试对于测试工作的意义主要有 1 黑盒测试有助于对被测产品进行总体功能的需求进行验证 2 从测试管理来说 黑盒测试是非常方便的 不需要对代码进行测试管理 3 黑盒测试是把所有可能的输入都作为测试数据使用的 容易查出程序中的错误 软件测试技术研究组 中国信息大学 3 2黑盒测试方法因为黑盒测试一种基于证明功能需求和用户最终需求的测试方法 所以在选择测试设计测试方法方面一般有如下几种 黑盒测试技术设计用例方法 等价类划分法 边界值分析法 因果图法 判定表驱动测试 软件测试技术研究组 中国信息大学 场景法 功能图法 错误推测法 正交试验设计法 在实际测试工作中 往往是综合使用各种方法才能有效提高地提高测试效率和测试覆盖率 这就需要认真掌握这些方法的原理 积累更多的测试经验 以有效地提高测试水平和测试的效率 通常在确定测试方法是 应遵循以下原则和策略 软件测试技术研究组 中国信息大学 原则 根据程序的需求和一旦发生故障将造成的损失来确定测试的优先级和测试重点 根据功能需求认真制定测试策略 尽可能少的使用测试用例 减少测试的工作量 发现更多的程序错误 在任何情况下都必须采用边界值分析法 这种方法设计出的测试用例发现程序错误的能力最强 软件测试技术研究组 中国信息大学 2 策略 首先进行等价类划分 包括输入条件和输出条件的等价划分 将无限测试变成有限测试 这是减少工作量和提高测试效率最有效的方法 在任何情况下都必须使用边界值分析方法 经验表明 用这种方法设计出的测试用例发现程序错误的能力最强 可以用错误推测法追加一些测试用例 这需要依靠测试工程师的智慧和经验 对照程序逻辑 检查已设计出的测试用例的逻辑覆盖程度 如果没有达到要求的覆盖标准 应当再补充足够的测试用例 软件测试技术研究组 中国信息大学 如果程序的功能说明中含有输入条件的组合情况 则一开始就可选用因果图法和判定表驱动法 对于参数配置类的软件 要用正交试验法选择较少的组合方式达到最佳效果 功能图法也是很好的测试用例设计方法 我们可以通过不同时期条件的有效性设计不同的测试数据 对于业务流清晰的系统 可以利用场景法贯穿整个测试案例过程 在案例中综合使用各种测试方法 软件测试技术研究组 中国信息大学 3 2 1等价类划分等价类划分法是一种典型的 重要的黑盒测试方法 它将程序所有可能的输入数据 有效的和无效的 划分成若干个等价类 然后从每个部分中选取具有代表性的数据当作测试用例进行合理的分类 测试用例由有效等价类和无效等价类的代表组成 从而保证测试用例具有完整性和代表性 软件测试技术研究组 中国信息大学 1 等价类划分等价类划分可以分为有效等价类和无效等价类 1 有效等价类有效等价类指对于程序规格说明来说 是合理的 有意义的输入数据构成的集合 利用它 可以检验程序是否实现了规格说明预先规定的功能和性能 有效等价类可以是一个 也可以是多个 根据系统的输入域划分若干部分 然后从每个部分中选取少数代表性数据当做数据测试的测试用例 等价类是输入域的集合 软件测试技术研究组 中国信息大学 2 无效等价类无效等价类和有效等价类相反 无效等价类是指对于软件规格说明而言 没有意义的 不合理的输入数据集合 利用无效等价类 可以找出程序异常说明情况 检查程序的功能和性能的实现是否有不符合规格说明要求的地方 软件测试技术研究组 中国信息大学 2 等价类划分的方法和原则 1 方法 按区间划分 按数值划分 按数值集合划分 按限制条件或规划划分 按处理方式划分 2 原则 在输入条件规定取值范围或值的个数情况下 则可以确定一个有效等价类和两个无效等价类 在规定了输入数据的一组值中 假定n个 并且程序要对每个输入值分别处理的情况下 可以确定n个有效等价类和一个无效等价类 软件测试技术研究组 中国信息大学 等价类表的建立等价类表的建立如表3 1所示 软件测试技术研究组 中国信息大学 4 等价类表与测试用例的关系等价类表与测试用例的关系如表3 2所示 软件测试技术研究组 中国信息大学 3 2 2边界值分析方法边界值分析法BVA BoundaryValueAnalysis 用于对输入或输出的边界值进行测试的一种黑盒测试方法 选择边界值测试原则选择边界值测试主要考虑以下几条原则 1 如果输入条件规定了值的个数 则用最大个数 最小个数 比最小个数少一个 比最大个数多一个的数作为测试数据 2 如果输入条件规定了值的范围 则应取刚达到这个范围的边界值 以及刚刚超过这个范围边界的值作为测试输入数据 3 如果程序中使用了一个内部数据结构 则应当选择这个内部数据结构的边界上的值作为测试用例 软件测试技术研究组 中国信息大学 2 常见的边界值常见的边界值通常表现在如界面屏幕 数组 报表和循环等 它的表现的方式 1 屏幕上光标在最左上 最右下位置 2 数组元素的第一个和最后一个 3 报表的第一行和最后一行 4 循环的第0次 第1次 倒数第2次 最后一次 软件测试技术研究组 中国信息大学 3 2 3因果图法因果图法也是较常用的一种黑盒测试方法 是一种简化了的逻辑图 因果图能直观地表明输入条件和输出动作之间的因果关系 能帮助测试人员把注意力集中到与程序功能有关的那些输入组合 比采用等价分类法有更高的测试效率 但这种方法的操作步骤比较复杂 采用因果图法能帮助我们按照一定的步骤选择一组高效的测试用例 同时 还能指出程序规范中存在什么问题 鉴别因果图 制作因果图 软件测试技术研究组 中国信息大学 3 2 4判定表驱动法因果图方法中已经用到了判定表 DecisionTable 是分析和表达多逻辑条件下执行不同操作的情况下的工具 在程序设计发展的初期 判定表就已被当作编写程序的辅助工具了 由于判定表测试严格 能够将复杂的逻辑关系和多种条件组合的情况表达得既具体又明确 针对不同的逻辑条件组合值 分别执行不同的操作 因此 使用判定表能够设计书完整的测试用例集合 判定表一种针对存在条件 动作关系或者因果关系的特性测试的用例设计方法 软件测试技术研究组 中国信息大学 1判定表的组成 判定表通常由4个部分组成 如图3 6所示 软件测试技术研究组 中国信息大学 图3 6判定表4个组成部分 3 2 5场景法现在的软件几乎都是用事件触发来控制流程的 事件触发时的情景便形成了场景 而同一事件不同的触发顺序和处理结果就形成事件流 这种在软件设计方面的思想也可以引入到软件测试中 可以比较生动地描绘出事件触发时的情景 有利于测试设计者设计测试用例 同时使测试用例更容易理解和执行 软件测试技术研究组 中国信息大学 场景法的基本流和备选流场景用来描述流经用例的路径 从用例开始到结束遍历这条路径上所有的基本流和备选流如图3 7所示 软件测试技术研究组 中国信息大学 图3 7场景法的基本流和备选流 如上图 3 7 所示 图中经过用例的每条路径都用基本流和备选流来表示 直黑线表示基本流 是经过用例的最简单路径 备选流用不同的色彩表示 一个备选流可能从基本流开始 在某个特定条件下执行 可能重新加入基本流中 如备选流1和3 也可能从另一个备选流 如备选流2 或者终止用例而不再重新加入到某个流 如备选流2和4 软件测试技术研究组 中国信息大学 3 2 6功能图法功能图分析法是用功能图形象地表示程序的功能说明 由状态迁移图和布尔函数组成 同时需要依靠判定表或因果图表示的逻辑功能 并机械地生成功能图的测试用例 功能图方法是黑盒 白盒混合用例的设计方法 软件测试技术研究组 中国信息大学 3 2 7错误推测法基于以往经验和直觉来 参照以往的软件系统出现的错误 推测程序中所有可能存在的各种缺陷和错误 从而有针对性地设计测试用例 错误推错法的基本思路是 列举出程序中所有可能有的错误和容易发生错误的特殊情况 根据可能出现的错误情况选择测试用例 软件测试技术研究组 中国信息大学 3 2 8正交试验设计法黑盒测试方法正交试验设计法 通过正交试验理论来指导测试用例的选取 以便能够用较少的测试用例使测试充分 本方法在系统测试用例的设计中不常用 正交试验设计法依据Galois理论 从大量的 实验 数据 测试用例 中挑选适量的 有代表性的点 例 从而合理地安排实验 测试 的一种科学实验设计方法 改变了尺寸 测试程序都能自动地处理 软件测试技术研究组 中国信息大学 3 3黑盒测试的原则 策略和方法的选择黑盒测试作为以一种测试方法 随着软件开发速度的加快 用户的需求变化趋势加快 测试的方法需要不断地调整应用 所以要对软件有更加严格的测试 不断变化的需求将导致不同的功能产生 每个功能都需要对它进行测试 另外 由于黑盒测试不涉及内部结构和代码知识 而是根据规格说明书进行的 因此在选择测试方法方面要考虑以下原则和策略 软件测试技术研究组 中国信息大学 3 3 1黑盒测试的原则 根据软件规格说明书设计测试用例 规格说明书的正确性是至关重要的 有针对性的地找问题 并且正确定位等价类 功能是否有缺陷或错误现象 根据测试的重要性来确定测试等级和测试重点 减少程序可能出现的缺陷 在接口处 输入的信息是否能正确接受 接受后能否输出正确的结果 认真选择测试策略 尽可能发现程序的数据结构错误或外部信息访问错误 站在用户立场上进行测试 软件测试技术研究组 中国信息大学 3 3 2确定测试策略 1 在任何情况下都必须采用边界值分析法 这种方法设计出来的测试用例对发现程序的错误是非常有用的 2 必要时采用等价类划分法补充测试用例 3 对照程序逻辑 检查已设计出的测试用例的逻辑覆盖程度 如果没有达到要求的覆盖标准 则应当再补充更多的测试用例 4 如果程序的功能说明中含有输入条件的组合情况 则应一开始就选用因果图法 软件测试技术研究组 中国信息大学 3 3 3黑盒测试方法的组成步骤 测试范围 测试选择的类型 创建测试用例 脚本 测试工具的选用 执行测试用例 编写测试总结报告 审批 软件测试技术研究组 中国信息大学 3 4黑盒测试步骤在传统的软件开发中 测试工作往往被放在整个开发过程的后期进行 当应用程序的编码已经完成后 才开始进行测试 这样做有缺点 1 不利于发现早期设计过程 概要设计 初步设计 系统设计 中存在的错误 2 如果早期设计过程存在错误没有被发现 在程序编码后进行单元测试才发现是早期设计过程中产生的错误 这给测试工作带来的工作量是相当大的 同样也增大了测试成本 从某种程度上说 部分工作就需要重做 3 不利于提高工作效率 影响开发的进度 软件测试技术研究组 中国信息大学 3 4 1测试计划测试计划是完成测试工作的基础 一份好的测试计划是完成测试工作的先决条件 制定测试计划是整个测试工作的重要组成部分 测试计划模板请参见本书第15章的15 2节 测试计划是根据用户需求报告中关于功能和性能指标的要求进行的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城阳一模考试题及答案
- 2025年超常思维英语题库及答案
- 城轨网供电考试题及答案
- 咨询规划项目服务方案
- 安徽征信咨询方案
- 2025年新能源汽车自动驾驶技术与交通法规协同创新案例分析报告
- 2025年一元一次方程测试题及答案
- 2025年自动驾驶卡车在物流配送中的应用前景与市场前景分析报告
- 银行古琴宣传策划活动方案
- 建筑方案设计深度-培训
- 某水库调度规程完整
- Cpk 计算标准模板
- 封起DE日子博文 2006
- 锂离子电池生产安全讲座
- 画魂空手套无删减全文下载
- 五猖会原文 五猖会
- 主题教育苏轼生平介绍人物经历等PPT模板(内容完整)
- 眼科学-眼科检查(课件)
- 产品碳足迹课件
- 美国地图高清中文版
- 监控中心值班人员绩效考核月度考核表
评论
0/150
提交评论