首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
论述题3:针对以下C语言程序,请按要求回答问题 下面是一个简单的C语言程序: (1)画出该函数的程序流程图。 (2)设计测试用例,分别使函数的各种逻辑覆盖率尽量达到100%。如果认为该函数的某种逻辑覆盖率无法达到100%,需要说明原因。 (3)设计特殊
论述题3:针对以下C语言程序,请按要求回答问题 下面是一个简单的C语言程序: (1)画出该函数的程序流程图。 (2)设计测试用例,分别使函数的各种逻辑覆盖率尽量达到100%。如果认为该函数的某种逻辑覆盖率无法达到100%,需要说明原因。 (3)设计特殊
admin
2009-11-14
39
问题
论述题3:针对以下C语言程序,请按要求回答问题
下面是一个简单的C语言程序:
(1)画出该函数的程序流程图。
(2)设计测试用例,分别使函数的各种逻辑覆盖率尽量达到100%。如果认为该函数的某种逻辑覆盖率无法达到100%,需要说明原因。
(3)设计特殊的测试用例,说明各种逻辑覆盖之间的关系。
选项
答案
问题1: 解答: 根据源程序易得流程图,如图17-7所示。 [*] 问题2: 解答: 经过分析不难知,上面这个程序包含: 1)五个语句:每行一个语句。 2)三个条件:a>0;b<0;c>0 3)四个分支:有两个if语句,每个if语句有两个分支。 4)六个条件组合:条件表达式(a>0)‖b<0)共有两个条件,a>0和b<0,故有四个条件组合;条件表达式(c>0)只有一个条件c>0,故有两个条件组合。所以该程序共有六个条件组合。 5)四条路径:从程序的入口到出口的路径共有四条,分别是: Path1: 1—2—3—5—6—8 Path2: 1—2—3—5—7—8 Path3: 1—2—4—5—6—8 Path4: 1—2—4—5—7—8 这个程序有三个输入:a、b、c,其输入数据组合是非常大的。下面对该程序分别应用不同的逻辑覆盖准则,设计测试用例。 1.语句覆盖 根据语句覆盖准则,只需要采用两个输入数据组合:(a,b,c)=(1,1,1)、(-1,1,1),便可以把该程序的所有五个语句执行一遍。 2.分支覆盖(判定覆盖) 根据分支覆盖准则,只需要采用两个输入数据组合:(a,b,c)=(1,1,-1)、(-1,1,1),便可以把该程序的所有四个分支走遍。但未考虑b<0的情况,故不满足条件覆盖。说明满足分支覆盖的测试用例未必满足条件覆盖。 3.条件覆盖 根据条件覆盖准则,只需要采用两个输入数据组合:(a,b,c)=(1,1,-1)、(-1,-1,1),便可以把该程序的三个条件的真假情况都覆盖到。由于表达式(a>0)‖b<0)的计算值都为真,不会执行else语句,即不满足分支覆盖和语句覆盖。说明满足条件覆盖的未必满足分支覆盖和语句覆盖。 4.条件组合覆盖 根据条件组合的覆盖准则只需要采用四个输入数据组合:(a,b,c)=(1,-1,1)、(1,1,1)、(-1, 1,-1)、(-1,-1,-1),便可以把该程序的六个条件组合情况覆盖到。但执行的路径数只有2个,故不满足路径覆盖。说明满足条件组合的覆盖不一定满足路径覆盖。 5.路径覆盖 根据路径覆盖的准则,由图17-7可见,只需要采用四个输入数据组合:(a,b,c)=(1,1,1)、(1,1, -1)、(-1,1,1)、(-1,1,-1),便可以把该程序的所有四条路径都覆盖。路径覆盖是最强的覆盖准则。
解析
首先根据源程序画出程序流图比较容易,然后分析学过的所有的逻辑覆盖(如语句覆盖,分支覆盖,路径覆盖等),分析针对每种逻辑覆盖的标准来设计测试用例,最后通过设计测试用例来体现各种逻辑覆盖之间的关系。
转载请注明原文地址:https://kaotiyun.com/show/bfNZ777K
本试题收录于:
四级软件测试工程师题库NCRE全国计算机四级分类
0
四级软件测试工程师
NCRE全国计算机四级
相关试题推荐
阅读以下说明、Java代码和HTML文档,将应填入(n)处的字句写在答题纸的对应栏内。【说明】当用户启动html浏览器并首次打开下面的HTML文档时,JavaApplet小程序在显示面板上显示字符串“Welcome!”;当html页面被其他窗口
阅读以下说明及VisualBasic程序代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】某个文本文件中存放了若干个非零数值有效数据,每个数据占一行,最后一行以数字“0”作为结束标志。下面的程序用于计算该文件中这些数据之和,其运行窗口
阅读以下说明和C语言函数,将应填入(n)处的字句写在答题纸的对应栏内。【说明】一棵非空二叉树中“最左下”结点定义为:若树根的左子树为空,则树根为“最左下”结点;否则,从树根的左子树根出发,沿结点的左子树分支向下查找,直到某个结点不存在左子树时
将流程图中的(1)~(4)处补充完整。若按下式计算奇校验位,则上述流程图中的(1)处应填(5)。
阅读以下说明和C++代码。[说明]已知类SubClass的getSum方法返回其父类成员与类SubClass成员j的和,类SuperClass中的getSum为纯虚拟函数。程序中的第23行有错误,请修改该错误并给出修改后的完整结果,然后完
请指出错误所在行号并给出该行修改后的完整结果。请补齐第21行代码中的空缺。
阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。【说明】]开发一个五笔编码查询系统,界面如图所示。五笔编码存放在word.txt文
软件测试的目的是(50)。
循环链表的主要优点是(44)。
计算机中数据输入输出的控制方式有多种,中断方式的优点不包括______。
随机试题
这里倡导什么样的社会理念?文中主要运用了哪种论证方法?
人的本质是()
工料单价中应包含的费用有()。
股票是一种权益性信用工具,以下属于股票的特性的是( )。
在其他因素不变的条件下,如果一国政府在社会保障政策上降低保障标准,则其财政支出占国内生产总值的比重的变化情况是()。
甲公司于2016年2月20日外购一栋写字楼并于当日对外出租,取得时成本为12000万元,采用公允价值模式进行后续计量。2016年12月31日,该写字楼公允价值跌至11200万元。税法规定,该类写字楼采用年限平均法计提折旧,折旧年限为20年,预计净残值为0。
幼儿园教育课程的“指南针”和“方向盘”是()。
《党章》强调,要不断提高党的创造力、凝聚力、战斗力,建设学习型、()、创新型的马克思主义执政党,使我们党始终走在时代前列,成为领导全国人民沿着中国特色社会主义道路不断前进的坚强核心。
提案对于()相当于()对于作品
ThinkTwice:It’sAllRightAlegendaryfigureinmusichistory,Dylan,bornin1941,is【C1】________oneofthemostinfluent
最新回复
(
0
)