第五章 编码与测试3.pptVIP

  • 1
  • 0
  • 约6.24千字
  • 约 55页
  • 2018-02-24 发布于河南
  • 举报
第五章 编码与测试3

软件工程概论—— 第5章 编程与测试 黑盒测试与白盒测试优缺点比较 白盒测试的测试用例设计 1 、逻辑覆盖法 逻辑覆盖是以程序内部的逻辑结构为基础的测试用例设计技术,属于白盒测试。包括: (1)语句覆盖 (2)判定覆盖 (3)条件覆盖 (4)判定/条件覆盖 (5)条件组合覆盖 (6)路径覆盖 白盒测试-逻辑覆盖 (1)语句覆盖 使程序中每个语句至少执行一次。 程序路径有 L1:a-c-e [2,0,3] L2:a-c-d L3:a-b-d L4:a-b-e 特点:覆盖弱 白盒测试-逻辑覆盖 (2)判定覆盖 使程序中每个判断的取真分支和取假分支至少经历一次。故又称之为分支覆盖。 L1:a-c-e L2:a-c-d [3,0,1] L3:a-b-d L4:a-b-e [2,1,3] 白盒测试-逻辑覆盖 想想: 如果将判断语句(A2 or X1)改成(A2 or X1 ),用以上测试用例测试,结果如何? 白盒测试-逻辑覆盖 (3)条件覆盖 使程序中每个判定的每个条件的可能取值至少执行一次。判定表达式共有4个条件: A1 、B=0、 A2、 X1 白盒测试-逻辑覆盖 第一个判定出现的结果有两种: 真:A1 、B=0、 假:A ≤1 、B≠0、 第二个判定出现的结果有两种 真: A2、 X1 假:A≤2、X≤1 白盒测试-逻辑覆盖 白盒测试-逻辑覆盖 (4)判定/条件覆盖 选取足够多的测试用例,使判断中的每个条件的所有可能取值至少执行一次,同时每个判断本身的所有可能判断结果至少执行一次. 白盒测试-逻辑覆盖 (5)条件组合覆盖 A1 、B=0、 A2、 X1 测试步骤: 列出四个条件产生的八种组合; 并使用满足条件组合覆盖的测试用例进行测试; 满足了条件组合覆盖的一定满足判定覆盖、条件覆盖以及判定/条件覆盖。 白盒测试-逻辑覆盖 (6)路径覆盖 设计足够的测试用例,使被测程序的所有路径都覆盖。 白盒测试-逻辑覆盖 6种不同覆盖标准的比较 P96 白盒测试-循环覆盖 2、循环覆盖 程序中的逻辑结构除了除了判定,还有循环。包括: (1)单循环 方法:跳过循环、执行一次循环。。。。 (2)嵌套循环 方法:首先对内层循环测试;由内到外,进行下一层的测试。 白盒测试-基本路径测试 3、基本路径测试 基本路径测试是在程序流程图的基础上,通过分析由控制构造的环路复杂度,导出基本路径集合,从而设计测试用例,保证这些路径至少通过一次。 白盒测试-基本路径测试 (1)基本路径测试步骤: 导出程序流程图的拓扑结构-流图 (程序图) 计算流图G的环路复杂度V(G) 确定只包含独立路径的基本路径集 设计测试用例 导出程序流程图的拓扑结构-流图 白盒测试-基本路径测试 (2)计算流图G的环路复杂度V(G) V(G)= 区域个数=4 V(G)=边的条数-节点个数+2=4 V(G)=判定节点个数+1=4 白盒测试-基本路径测试 确定只包含独立路径的基本路径集 path1:1-11 path1:1-2-3-4-5-10-1-11 path1:1-2-3-6-8-9-10-1-11 path1:1-2-3-6-7-9-10-1-11 设计测试用例,保证基本路径集中每条 路径的执行。 黑盒测试的测试用例设计 黑盒测试力图发现下述类型的错误: (1)功能不正确或遗漏了功能; (2)界面错误; (3)数据结构错误或外部数据库访问错误; (4)性能错误; (5)初始化和终止错误。 注:白盒测试在测试过程的早期进行,而黑盒测试主要用于测试过程的后期。 黑盒测试 设计黑盒测试方案时应该考虑下述问题: (1)怎样测试功能的有效性; (2)哪些类型的输入将构成好的测试用例; (3)系统是否对特定的输入值特别敏感; (4)怎样划定数据类的边界; (5)系统能够承受什么样的数据率和数据量; (6)数据的特定组合将对系统运行产生什么影响。 黑盒测试-等价划分法 1、等价划分 如果把所有可能的输入数据(有效的和无效的)划分成若干类, 则可以合理地做出下述假定:每类中的一个典型值在测试中的作用与这一类中所有其他值的作用相同。 划分等价类的标准: 覆盖 不相交 代表性 使用等价划分设计测试方案的步骤: (1)划分等价类 (2)确定测试方案 黑盒测试-等价划分法 划分等价类的几条启发式规则: (1)如果输入条件规定了取值范围,可划分出一个有效等价类和两个无效等价类。 例 :输入值是学生成绩,范围是0~100 黑盒测试-等价划分法 (2)如果规定了输入数据的个数,则类似地

文档评论(0)

1亿VIP精品文档

相关文档