TJNU-ZT-第四章 测试方法-2(黑盒1).ppt_第1页
TJNU-ZT-第四章 测试方法-2(黑盒1).ppt_第2页
TJNU-ZT-第四章 测试方法-2(黑盒1).ppt_第3页
TJNU-ZT-第四章 测试方法-2(黑盒1).ppt_第4页
TJNU-ZT-第四章 测试方法-2(黑盒1).ppt_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

1 4 3黑盒测试 黑盒测试 又称为功能测试 是把程序或系统看成一个黑盒子 完全不考虑其内部结构和处理过程 2 4 3黑盒测试 主要是测试各个程序或功能模块之间的接口 检查系统功能是否能按照设计书的规定正常执行 是否能接收正确的输入数据产生正确的输出结果 主要适用于系统测试等后期的测试阶段 3 黑盒测试 系统模型 4 黑盒测试 测试用例设计 等价类划分边界值分析错误推测法因果图 5 4 3 1等价类划分 等价类划分是一种典型的黑盒测试方法 使用这一方法时 完全不考虑程序的内部结构 只依据程序的规格说明来设计测试用例 等价类划分方法把所有可能的输入数据 即程序的输入域划分成若干部分 然后从每一部分中选取少数有代表性的数据做为测试用例 6 使用这一方法设计测试用例要经历划分等价类 列出等价类表 和选取测试用例两步 划分等价类等价类是指某个输入域的子集合 在该子集合中 各个输入数据对于揭露程序中的错误都是等效的 测试某等价类的代表值就等价于对这一类其它值的测试 7 等价类的划分有两种不同的情况 有效等价类 是指对于程序的规格说明来说 是合理的 有意义的输入数据构成的集合 无效等价类 是指对于程序的规格说明来说 是不合理的 无意义的输入数据构成的集合 在设计测试用例时 要同时考虑有效等价类和无效等价类的设计 8 划分等价类的原则 按区间划分在输入条件规定了取值范围或值的个数的情况下 则可以确立一个有效等价类和两个无效等价类 按数值集合划分在输入条件规定了输入值的集合或者规定了 必须如何 的条件的情况下 可以确立一个有效等价类和一个无效等价类 9 划分等价类的原则 按数值划分在规定了输入数据的一组值 假定n个 并且程序要对每一个输入值分别处理的情况下 可确立n个有效等价类和一个无效等价类 按限制条件或规则划分在规定了输入数据必须遵守的规则的情况下 可确立一个有效等价类 符合规则 和若干个无效等价类 从不同角度违反规则 细分等价类在确知已划分的等价类中各元素在程序处理中的方式不同的情况下 则应再将该等价类进一步地划分为更小的等价类 10 建立等价类表 在确立了等价类之后 建立等价类表 列出所有划分出的等价类 11 等价类划分 主要方法 启发式规则 如果规定了输入数据的范围则可划分一个有效的等价类 输入数据在次范围 两个无效的等价类 输入数据小于最小值或大于最大值 12 等价类划分 主要方法 13 等价类划分 主要方法 如果规定了输入数据的个数 也可以按以上方法划分出一个有效的等价类 两个无效的等价类 14 等价类划分 主要方法 如果规定了输入数据的一组值 且程序对不同输入值做不同处理 则每个输入值有一个有效的等价类 允许的输入值 和一个无效的等价类 任一个不允许的输入值 15 等价类划分 主要方法 例 输入条件说明学历可为 专科 本科 硕士 博士四种之一 则分别取这四种这四个值作为四个有效等价类 另外把四种学历之外的任何学历作为无效等价类 16 等价类划分主要方法 如果规定了输入数据必须遵循的规则 则可以划分出一个有效的等价类 符合规则 和若干个无效等价类 从各种不同角度违反规则 17 等价类划分 主要方法 如果规定了输入数据为整形 则可以划分出三个有效类 正整数 零和负整数 和一个无效类 非整数 18 等价类划分 主要方法 如果程序的处理对象是表格 则应该使用空表 以及含一项或多项的表 19 等价类划分 主要方法 注 1 以上列出的启发式规则只是测试时可能遇到的情况中的很小一部分 为了正确划分等价类 一是要注意积累经验 二是要正确分析被测程序的功能 20 等价类划分 主要方法 2 在划分无效的等价类时还必须考虑到编译程序的检错功能 一般说来 不需要设计测试数据用来暴露编译程序肯定能发现的错误 21 等价类划分 主要方法 3 上面列出的启发式规则虽然都是针对输入数据说的 但是其中绝大部分也同样适用于输出数据 22 等价类划分 主要方法 用等价类划分法设计测试用例步骤 1 形成等价类表 每一等价类规定一个唯一的编号 2 设计一测试用例 使其尽可能多地覆盖尚未覆盖的有效等价类 重复这一步骤 直到所有有效等价类均被测试用例所覆盖 3 设计一新测试用例 使其只覆盖一个无效等价类 重复这一步骤直到所有无效等价类均被覆盖 注 应该使每个测试方案只覆盖一个无效的等价类 等价类划分不能测试输入条件组合 23 举例 根据下面给出的规格说明 利用等价类划分的方法 给出足够的测试用例 一个程序读入3个整数 把这三个数值看作一个三角形的3条边的长度值 这个程序要打印出信息 说明这个三角形是不等边的 是等腰的 还是等边的 24 举例 我们可以设三角形的3条边分别为A B C 如果它们能够构成三角形的3条边 必须满足 A 0 B 0 C 0 且A B C B C A A C B 如果是等腰的 还要判断A B 或B C 或A C 如果是等边的 则需判断是否A B 且B C 且A C 25 举例 26 举例 27 等价类划分 举例 例 某报表处理系统要求用户输入处理报表的日期 日期限制在2001年1月至2005年12月 即系统只能对该段期间内的报表进行处理 如日期不在此范围内 则显示输入错误信息 系统日期规定由年 月的6位数字字符组成前四位代表年 后两位代表月 如何用等价类划分法设计测试用例 来测试程序的日期检查功能 28 等价类划分 举例 第一步 等价类划分 输入等价类有效等价类无效等价类 报表日期 输入条件的等价类表 29 等价类划分 举例 第二步 为有效等价类设计测试用例对表中编号为1 2 3的3个有效等价类用一个测试用例覆盖 测试数据期望结果覆盖范围 200105 等价类 1 2 3 输入有效 30 等价类划分 举例 第三步 为每一个无效等价类设至少设计一个测试用例 测试数据期望结果覆盖范围 001MAY 等价类 4 输入无效 20015 等价类 5 输入无效 2001005 等价类 6 输入无效 200005 等价类 7 输入无效 200805 等价类 8 输入无效 200100 等价类 9 输入无效 200113 等价类 10 输入无效 测试数据不能有重复 31 等价类划分 举例 例 对招干考试系统 输入学生成绩 子模块设计测试用例招干考试分三个专业 准考证号第一位为专业代号 如 1 行政专业 2 法律专业 3 财经专业 行政专业准考证号码为 110001 111215法律专业准考证号码为 210001 212006财经专业准考证号码为 310001 314015 32 等价类划分 举例 例 准考证号码的等价类划分有效等价类 1 110001 111215 2 210001 212006 3 310001 314015无效等价类 4 110000 5 111216 210000 6 212007 31000 7 314016 33 用等价类划分法设计测试用例 例 把一个六位数字字符串转化为整数 边界分析法 34 有效输入的等价类无效输入的等价类1 1 6个数字串 最高位非0 4 空字符串2 最高位为0的数字串5 不足6位时 字符串左边填充不是0或空格3 最高位数字左邻是负号的6 最高位数字右边包含字数字串符和空格7 负号与最高位数字间有空格8 在最小负整数与0之间的负11 比 32767还小的负整数整数9 012 比32768还大的正整数10 在0和最大正整数之间的正整数 第一步 等价类划分 35 根据以上等价类 设计测试方案 1 1 6个数字串 输出合法的正整数2 最高位为0的数字串 输出合法正整数3 最高位数字时0 输出也为04 最高位数字左邻是负号的数字串 输出合法负整数5 太小的负整数 47561 无效输入6 太大的正整数 132767 无效输入7 空字符串 没有数字 无效输入8 字符串左部非0也不是空格 1 填充错误9 最高位数字后面有空格 12 无效输入10 最高位数字后有其它字符 1 2 无效输入11 负号和最高位数字间有空格 12 无效输入 第二步 确定测试用例 36 4 3 2边界值分析法 由测试工作的经验得知 大量的错误是发生在输入或输出范围的边界上 而不是在输入范围的内部 因此针对各种边界情况设计测试用例 可以查出更多的错误 边界值分析是一种补充等价划分的测试用例设计技术 它不是选择等价类的任意元素 而是选择等价类边界的测试用例 实践证明为检验边界附近的处理专门设计测试用例 常常取得良好的测试效果 37 边界值设计原则 应遵循以下几条原则 如果输入条件规定了值的范围 则应取刚达到这个范围的边界的值 以及刚刚超越这个范围边界的值作为测试输入数据 如果输入条件规定了值的个数 则用最大个数 最小个数 比最小个数少一 比最大个数多一的数作为测试数据 根据规格说明的每个输出条件 使用前面的原则1 38 4 根据规格说明的每个输出条件 应用前面的原则2 5 如果程序的规格说明给出的输入域或输出域是有序集合 则应选取集合的第一个元素和最后一个元素作为测试用例 6 如果程序中使用了一个内部数据结构 则应当选择这个内部数据结构的边界上的值作为测试用例 7 分析规格说明 找出其他可能的边界条件 39 1 边界值分析不是从某等价类中随便挑一个作为代表 而是使这个等价类的每个边界都要作为测试条件 2 边界值分析不仅考虑输入条件 还要考虑输出空间产生的测试情况 边界值分析法与等价类划分法区别 40 设计测试用例原则 1 如输入条件代表以a和b为边界的范围 测试用例应包含a b 略大于a和略小于b的值 2 如输入条件代表一组值 测试用例应当执行其中的最大值和最小值 还应测试略大于最大值和略小于最小值的值 边界值分析法 续 41 边界值分析设计测试用例原则 例 邮件收费规定1 5kg收费2元则应设计测试用例 0 9 1 5 5 1kg或0 99 1 5 5 01kg 42 边界值分析设计测试用例原则 例 一个输入文件可有1 255个记录则可分别设计有 1个 255个 0个 256个记录的输入文件 43 设计测试用例原则 3 如规格说明中提出输入输出的有序集 顺序文件 有序表等 取有序集的第一个和最后一个元素做测试用例 4 如程序数据结构有预定的边界 应测试其边界的数据项 5 如输出条件规定了取值范围 取边界上下浮动值做测试用例 边界值分析法 续 44 边界值分析设计测试用例原则 例 程序中定义一数组 其元素下标的下界是0 上界是100 则应选择达到这个数组下标边界的值 如0与100作为测试用例 45 例 每日保险扣除额 输出项 在0 1165 25元 则应设计测试用例使其恰好产生0元和1165 25元的结果 此外还应考虑设计结果为负值或 1165 25元的测试用例 如 0 01元和1165 26元 由于输入值的边界不与输出值的边界相对应 所以要检查输出值的边界及产生超出输出值值域的结果不一定可能 边界值分析设计测试用例原则 46 输入条件 报表日期的类型及长度 1个数字字符5个数字字符7个数字字符有1个非数字字符全部是非数字字符6个数字字符 显示出错显示出错显示出错显示出错显示出错输入有效 日期范围 月份范围 报表日期 边界值分析法测试用例 测试用例说明 测试数据 期望结果 选取理由 52001520010052001 5MAY 200105 月份为1月月份为12月月份12 200101200112200100200113 200101200512200100200513 输入有效输入有效显示出错显示出错 输入有效输入有效显示出错显示出错 在有效范围边界上选取数据 仅有1个合法字符比有效长度少1比有效长度多1只有1个非法字符6个非法字符类型及长度均有效 最小日期最大日期刚好小于最小日期刚好大于最大日期 最小月份最大月份刚好小于最小月份刚好大于最大月份 47 上边界分析法最后的例子中 应补充下述测试方案 12 使输出刚好等于 32768 输出 3276813 使输出刚好等于32767 输出32767改5 使输出刚好小于 32768 32769 无效输入改6 使输出刚好大于32767 32768 无效输入 边界值分析法 续 48 其他一些边界条件 另一种看起来很明显的软件缺陷来源是当软件要求输入时 比如在文本框中 不是没

温馨提示

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

评论

0/150

提交评论