软件工程概述软件测试技术课件.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文档。上传文档
查看更多
用例设计方法-路径覆盖 Path Coverage 也称呼为断言覆盖(predicate coverage) 要求:覆盖程序中所有可能的路径,即穷举路径法 优点:对路径完全彻底的测试。 穷举路径法 缺点1:路径是以分支的指数级别增加的 缺点2:许多路径可能与执行的数据相关 if (success) statement1; statement2; if (success) statement3; 路径覆盖认为以上语句包含四个路径,实际上只有两个是可行的:success=false 和success=true 基本路径法 为解决难题只得把覆盖的路径数压缩到一定限度内。 例如,只考虑循环的两个可能性:重复零次和多于零次的重复;对于do-while 循环,两种,循环体执行一次和多于一次 使用线性独立路径 (一) 基本路径测试法 基本路径测试法是在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例的方法。 设计出的测试用例要保证在测试中程序的每个可执行语句至少执行一次。 2.具体方法和步骤 在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例。包括以下4个步骤和一个工具方法: 1. 程序的控制流图:描述程序控制流的一种图示方法。 2. 程序圈复杂度:McCabe复杂性度量。从程序的环路复杂性可导出程序基本路径集合中的独立路径条数,这是确定程序中每个可执行语句至少执行一次所必须的测试用例数目的上界。 3. 导出测试用例:根据圈复杂度和程序结构设计用例数据输入和预期结果。 4. 准备测试用例:确保基本路径集中的每一条路径的执行。 void Sort(int iRecordNum,int iType) 1 { 2 int x=0; 3 int y=0; 4 while (iRecordNum--) 5 { 6??if(0= =iType) 7? ? x=y+2; 8??else 9? ? if(1= =iType) 10? ?? ?x=y+10; 11? ?else 12? ???x=y+20; 13??} 14 } void Sort(int iRecordNum,int iType) 1 { 2 int x=0; 3 int y=0; 4 while (iRecordNum--) 5 { 6??if(0= =iType) 7? ? x=y+2; 8??else 9? ? if(1= =iType) 10? ?? ?x=y+10; 11? ?else 12? ???x=y+20; 13??} 14 } 第一步:画出控制流图。 第二步:计算圈复杂度 有以下三种方法计算圈复杂度: 流图中区域的数量对应于环型的复杂性; 给定流图G的圈复杂度V(G),定义为V(G)=E-N+2,E是流图中边的数量,N是流图中结点的数量; 给定流图G的圈复杂度V(G),定义为V(G)=P+1,P是流图G中判定结点的数量。 第三步:导出独立路径 根据上面的计算方法,可得出四个独立的路径。(一条独立路径是指,和其他的独立路径相比,至少引入一个新处理语句或一个新判断的程序通路。V(G)值正好等于该程序的独立路径的条数。) 路径1:4-14 路径2:4-6-7-13-4-14 路径3:4-6-8-10-13-4-14 路径4:4-6-8-11-13-4-14 第四步:准备测试用例 根据上面的独立路径,去设计输入数据,使程序分别执行到上面四条路径 4.基本路径法缺点 缺点1:只需考虑每个判定表达式的取值,并没有检验表达式中条件的各种可能组合情况 解决办法: 拆分 和条件覆盖法结合起来使用 缺点2:对循环结构测试不充分 解决办法:对循环结构进行补充测试 (二)循环结构的 测试用例设计 (补充) 简单循环 循环的最大次数为n,设计测试用例的循环次数为m m=0 :零次循环,从循环入口到出口 m=1 :一次循环,检查循环初始值 m=2 :二次循环,检查多次循环 2mn-1 :m次循环, 抽查多次循环 m=n :最大次数循环,检查边界 m=n-1 :比最大次数少一次的循环,检查边界 m=n+1 :比最大次数多一次的循环,检查边界 简单循环例子:求最小值 控制流图 测试用例 嵌套循环 从最内层循环开始测试,所有外层循环次数设置为最小值; 对最内层循环按照简单循环的测试方法进行; 由内向外进行下一个循环的测试,本层循环的所有外层循环仍取最小值,而由本层循环嵌套的循环取某些 “ 典型 ” 值; 重复上一步的过程,直到测试完所有循环。 串接循环 串接的循环彼此独立:使用简单循环的策略分别测试。 串接的循环彼此关联:例如第一个循环执行结果决定第二个循环的初始值,使用嵌套循环的方法进行测试,把第一个循环

文档评论(0)

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

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

1亿VIP精品文档

相关文档