首页 > 知识点讲解
       基本路径测试法步骤
知识路径: > 测试技术的分类 > 白盒测试技术 > 白盒测试方法 > 基本路径测试法 > 
被考次数:9次     被考频率:中频率     总体答错率:31%     知识难度系数:     
考试要求:掌握      相关知识点:3个      
        基本路径测试法适用于模块的详细设计及源程序,其主要步骤如下:
        . 以详细设计或源代码作为基础,导出程序的控制流图;
        . 计算得到的控制流图G的环路复杂性V(G);
        . 确定线性无关的路径的基本集;
        . 生成测试用例,确保基本路径集中每条路径的执行。
        下面以一个求平均值的过程averagy为例,说明测试用例的设计过程。用PDL语言描述的averagy过程如下所示。
        
        
               以详细设计或源代码作为基础,导出程序的控制流图
               利用在如下图一所示的控制流图的图形符号、如下图二所示的程序流图和对应的控制流图和如下图三所示的复合逻辑下的控制流图给出的符号和构造规则生成控制流图。对于上述过程,对将要映射为对应控制流图中一个结点的PDL语句或语句组,加上用数字表示的标号。加了标号的PDL程序及对应的控制流图如下图四和如下图五所示。
               
               控制流程图的图形符号
               
               程序流程图和对应的控制流程图
               
               复合逻辑下的控制流图
               
               对averagy过程定义结点
               计算得到的控制流图G的环路复杂性V(G)
               利用在前面给出的计算控制流图环路复杂性的方法,算出控制流图G的环路复杂性。如果一开始就知道判断结点的个数,甚至不必画出整个控制流图,就可以计算出该图的环路复杂性的值。对于如下图所示的控制流图,可以算出:
               
               averagy过程的控制流图
               V(G)=6(区域数)=5(判断结点数)+1=6。
               确定线性无关路径的基本集
               针对如上图所示的averagy过程的控制流图计算出的环路复杂性的值,就是该图已有的线性无关基本路径集中路径数目。该图所有的6条路径如下所示。
               [path1]1—2—10—11—13
               [path2]1—2—10—12—13
               [path3]1—2—3—10—11—13
               [path4]1—2—3—4—5—8—9—2…
               [path5]1—2—3—4—5—6—8—9—2…
               [path6]1—2—3—4—5—6—7—8—9—2…
               路径4、5、6后面的省略号(…)表示在控制结构中以后剩下的路径是可选择的。在很多情况下,标识判断结点,常常能够有效地帮助导出测试用例。在上例中,结点2、3、5、6和10都是判断结点。
               (4)生成测试用例,确保基本路径集中每条路径的执行
               根据判断结点给出的条件,选择适当的数据以保证某一条路径可以被测试到。满足上述基本路径集的测试用例如下所示。
               [path1]输入数据:value[k]=有效输入,限于k
               value[i]=-999,当2≤i≤100。
               预期结果:n个值的正确的平均值、正确的总计数。
               注意:不能孤立地进行测试,应当作为路径4、5、6测试的一部分来测试。
               [path2]输入数据:value[1]=-999;
               预期结果:平均值=-999,总计数取初始值。
               [path3]输入数据:试图处理101个或更多的值,而前100个应当是有效的值;
               预期结果:与测试用例1相同。
               [path4]输入数据:value[i]=有效输入,且i<100;
               value[k]<最小值,当k
               预期结果:n个值的正确的平均值、正确的总计数。
               [path5]输入数据:value[i]=有效输入,且i<100;
               value[k]>最大值,当k≤i时;
               预期结果:n个值的正确的平均值、正确的总计数。
               [path6]输入数据:value[i]=有效输入,且i<100
               预期结果:n个值的正确的平均值、正确的总计数。
               每个测试用例执行之后,与预期结果进行比较。如果所有测试用例都执行完毕,则可以确信程序中所有的可执行语句至少被执行了一次。但是必须注意的是,一些独立的路径(如此例中的路径1),往往不是完全孤立的,有时它是程序正常的控制流的一部分,这时,这些路径的测试可以是另一条路径测试的一部分。
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有