5-1构造性测试-控制流测试.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5-1构造性测试-控制流测试

内容 语句覆盖 判定覆盖(分支) 条件覆盖 判定-条件覆盖 条件组合覆盖 路径覆盖 DD路径测试 例:实现一个简单的数学运算 int a,b; double c ; scanf(“%d,%d,%f”,a,b,c) If (a0 And b0) c=c/a; If (a1 or c1) c=c+1; c=b+c 1.语句覆盖 基本思想是:设计若干测试用例,运行被测程序,使程序中每个可执行语句至少执行一次。 1.语句覆盖……续1 只需设计一个测试用例:a=2,b=1,c=6;即达到了语句覆盖。 1.语句覆盖……续2 优点:可以很直观地从源代码得到测试用例,无须细分每条判定表达式。 缺点:由于这种测试方法仅仅针对程序逻辑中显示存在的语句,但对于隐藏的条件是无法测试的。语句覆盖是最弱的逻辑覆盖。 2.判定覆盖 基本思想是:设计若干测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少经历一次,即判断真假值均曾被满足。 2.判定覆盖……续1 a=2,b=1 ,c=6可覆盖判断M的Y分支和判断Q的Y分支; a=-2,b=-1 ,c=-3可覆盖判断M的N分支和判断Q的N分支 。 这两组测试用例可覆盖所有判定的真假分支。 2.判定覆盖……续2 a=1,b=1 ,c=-3 可覆盖判断M的Y分支和判断Q的N分支 ; a=1,b=-2 ,c=3可覆盖判断M的N分支和判断Q的Y分支 ; 同样的这两组测试用例也可覆盖所有判定的真假分支。 2.判定覆盖……续3 【优点】:判定覆盖具有比语句覆盖更强的测试能力。同样判定覆盖也具有和语句覆盖一样的简单性,无须细分每个判定就可以得到测试用例。 【缺点】:往往大部分的判定语句是由多个逻辑条件组合而成,若仅仅判断其整个最终结果,而忽略每个条件的取值情况,必然会遗漏部分测试路径。判定覆盖仍是弱的逻辑覆盖。 3.条件覆盖 基本思想是:设计若干测试用例,执行被测程序以后要使每个判断中每个条件的可能取值至少满足一次。 3.条件覆盖……续1 判断M表达式: 设条件 a0 取真 记为 T1 假 F1 条件 b0 取真 记为 T2 假 F2 判断Q表达式: 设条件 a1 取真 记为 T3 假 F3 条件 c1 取真 记为 T4 假 F4 3.条件覆盖……续2 3.条件覆盖……续3 【优点】:增加了对条件判定情况的测试,增加了测试路径。 【缺点】:条件覆盖不一定包含判定覆盖。例如,我们刚才设计的用例就没有覆盖判断M的Y分支和判断Q的N分支。条件覆盖只能保证每个条件至少有一次为真,而不考虑所有的判定结果。 4.判定-条件覆盖 基本思想是:设计足够的测试用例,使得判断条件中的所有条件可能取值至少执行一次,同时,所有判断的可能结果至少执行一次。 4.判定-条件覆盖……续1 按照判定-条件覆盖的要求,我们设计的测试用例要满足如下条件: 所有条件可能至少执行一次取值; 所有判断的可能结果至少执行一次。 4.判定-条件覆盖……续2 4.判定-条件覆盖……续3 【优点】 :能同时满足判定、条件两种覆盖标准。 【缺点】 :判定/条件覆盖准则的缺点是未考虑条件的组合情况。 5.条件组合覆盖 基本思想是:设计足够的测试用例,使得所有可能的条件取值组合至少执行一次 5.条件组合覆盖……续1 按照条件组合覆盖的基本思想,对于前面的例子,我们把每个判断中的所有条件进行组合,设计组合条件如表所示,而我们设计的测试用例就要包括所有的组合条件。 5.条件组合覆盖……续2 5.条件组合覆盖……续3 【优点】 :条件组合覆盖准则满足判定覆盖、条件覆盖和判定/条件覆盖准则。 【缺点】 :线性地增加了测试用例的数量。 6.路径覆盖 基本思想是:设计所有的测试用例,来覆盖程序中的所有可能的执行路径 。 6.路径覆盖……续1 6.路径覆盖……续2 【优点】 :这种测试方法可以对程序进行彻底的测试,比前面五种的覆盖面都广。 【缺点】 :需要设计大量、复杂的测试用例,使得工作量呈指数级增长,不见得把所有的条件组合都覆盖。 从前面的例子我们可以看到,采用任何一种覆盖方法都不能满足我们的要求,所以,在实际的测试用例设计过程中,可以根据需要将不同的覆盖方法组合起来使用,以实现最佳的测试用例设计 。 找“关键”路径,提高效率? 控制流图 程序流程图又称框图——最熟悉,最容易理解的一种程

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档