网站大量收购独家精品文档,联系QQ:2885784924

路径分析测试.ppt

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
路径分析测试

2.4.2 独立路径测试 2.4.2 独立路径测试 环复杂度:6 2.4.2 路径分析测试 对于比较简单的小程序来说,实现路径覆盖是可能的,但如果程序比较复杂,存在多个判断和多个循环,可能的路径数目将会急剧增长,以致路径覆盖难以实现。实际上可以做到的只是有选择地测试程序中某些有代表性的路径。 独立路径选择和Z路径覆盖是两种常见的路径覆盖方法。 2.4.2 控制流图 控制流图是由节点和控制边组成的,具有以下几个特点: 具有唯一入口节点,即源节点,表示程序段的开始语句; 具有唯一出口节点,即汇节点,表示程度段的结束语句; 节点由带有标号的圆圈表示,表示一个或多个无分支的源程序语句; 控制边由带箭头的直线或弧表示,代表控制流的方向。 2.4.2 控制流图 2.4.2 控制流图 程序的环路复杂性是一种描述程序内部逻辑复杂度的标准。给定一个控制流图G,设其环形复杂度为V(G),在这里介绍三种常见的计算方法来求解V(G): V(G) = E-N+2,其中E是控制流图G中边的数量,N是控制流图中节点的数目; V(G) = P+1,其中P是控制流图G中判断节点(即包含条件的节点)的数目;节点由带有标号的圆圈表示,表示一个或多个无分支的源程序语句; V(G) = A,其中A是控制流图G中区域的数目。由边和节点围成的部分叫做区域,当在控制流图中计算区域的数目时,控制流图外的部分也应记为一个区域。 * 2.4.2 独立路径测试 测试用例设计 测试难点 独立路径集合规模确定 独立路径的抽取 不可行路径的处理 测试用例的设计 * 2.4.2 独立路径测试 测试难点 如何确定独立路径集合的规模 如何从整个路径集合中抽取独立路径的集合,以确保路径的独立性和独立路径集合的完备性 如何保证每条独立路径的可行性 如何从独立路径设计测试用例 * 2.4.2 独立路径测试 测试用例设计 测试难点 独立路径集合规模确定 独立路径的抽取 不可行路径的处理 测试用例的设计 * 2.4.2 独立路径测试 按照McCabe的环复杂度概念,对于指定的程序图,对路径的测试中所需独立路径集合的大小就等于其程序图的环复杂度 * 2.4.2 独立路径测试 测试用例设计 测试难点 独立路径集合规模确定 独立路径的抽取 不可行路径的处理 测试用例的设计 * 2.4.2 独立路径测试 独立路径抽取 1、确定主路径 该路径应包含尽可能多的判定节点 应包含尽可能复杂的判定表达式 应对应尽可能高的执行概率 应包含尽可能多的语句 2、根据基础路径抽取其他独立路径 * 2.4.2 独立路径测试 独立路径 Path1:A, B, C, G(经过判定节点A、B、C); Path2:A, D, E, F, G(在判定节点A处执行e2分支); Path3:A, B, E, F, G(在判定节点B处执行e5分支); Path4:A, B, C, B, C, G(在判定节点C处执行e3分支); Path5:A, D, F, G(在判定节点D处执行e7分支) * 2.4.2 独立路径测试 测试用例设计 测试难点 独立路径集合规模确定 独立路径的抽取 不可行路径的处理 测试用例的设计 * 2.4.2 独立路径测试 不可行路径的处理 程序的设计缺陷导致不可行路径 原因在于:构成判定表达式的多个简单判定条件之间存在一定关联,体现在多个简单判定条件的取值相互约束,从而导致部分路径不可行。若完全根据程序图来设计测试用例,往往无法发现这些不可行路径,最终导致测试失败 * 2.4.2 独立路径测试 测试用例设计 测试难点 独立路径集合规模确定 独立路径的抽取 不可行路径的处理 测试用例的设计 * 2.4.2 独立路径测试 测试用例设计步骤 根据程序源代码生成程序图 计算程序图的环复杂度,确定独立路径集合的大小 以最复杂的路径为基础路径,通过覆盖所有判定分支确定其他路径,抽取独立路径集合 注意剔除不可行路径,必要时补充其他重要的路径 根据得到的路径集合对应设计测试用例 2.4.2 独立路径测试 独立路径测试是在程序控制流图的基础上,通过分析控制流图的环路复杂性,导出可执行的独立路径集合,从而设计相应的测试用例。以下图所示程序流程为例: 2.4.2 独立路径测试 从控制流图看,一条独立路径是至少包含有一条在其它独立路径中从未有过的边的路径。上图所示的控制流图中一组独立的路径是: Path1:1 ? 11 Path2:1 ? 2 ? 3 ? 4 ? 5 ? 10 ? 1 ? 11 Path3:1 ? 2 ? 3 ? 6 ? 8 ? 9 ? 10 ? 1 ? 11 Path4:1 ? 2 ? 3 ? 6 ? 7 ? 9 ? 10 ? 1 ?

文档评论(0)

wangyueyue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档