第1题:
论述题3:针对以下C语言程序,请按要求回答问题
下面是一个简单的C语言程序:

(1)画出该函数的程序流程图。
(2)设计测试用例,分别使函数的各种逻辑覆盖率尽量达到100%。如果认为该函数的某种逻辑覆盖率无法达到100%,需要说明原因。
(3)设计特殊的测试用例,说明各种逻辑覆盖之间的关系。
问题2:
解答:
经过分析不难知上面这个程序包含:
1)五个语句:每行一个语句。
2)三个条件:a>0;b0;c>0
3)四个分支:有两个if语句每个if语句有两个分支。
4)六个条件组合:条件表达式(a>0)‖b0)共有两个条件a>0和b0故有四个条件组合;条件表达式(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.语句覆盖
根据语句覆盖准则只需要采用两个输入数据组合:(abc)=(111)、(-111)便可以把该程序的所有五个语句执行一遍。
2.分支覆盖(判定覆盖)
根据分支覆盖准则只需要采用两个输入数据组合:(abc)=(11-1)、(-111)便可以把该程序的所有四个分支走遍。但未考虑b0的情况故不满足条件覆盖。说明满足分支覆盖的测试用例未必满足条件覆盖。
3.条件覆盖
根据条件覆盖准则只需要采用两个输入数据组合:(abc)=(11-1)、(-1-11)便可以把该程序的三个条件的真假情况都覆盖到。由于表达式(a>0)‖b0)的计算值都为真不会执行else语句即不满足分支覆盖和语句覆盖。说明满足条件覆盖的未必满足分支覆盖和语句覆盖。
4.条件组合覆盖
根据条件组合的覆盖准则只需要采用四个输入数据组合:(abc)=(1-11)、(111)、(-1 1-1)、(-1-1-1)便可以把该程序的六个条件组合情况覆盖到。但执行的路径数只有2个故不满足路径覆盖。说明满足条件组合的覆盖不一定满足路径覆盖。
5.路径覆盖
根据路径覆盖的准则由图17-7可见只需要采用四个输入数据组合:(abc)=(111)、(11 -1)、(-111)、(-11-1)便可以把该程序的所有四条路径都覆盖。路径覆盖是最强的覆盖准则。
问题2:
解答:
经过分析不难知,上面这个程序包含:
1)五个语句:每行一个语句。
2)三个条件:a>0;b0;c>0
3)四个分支:有两个if语句,每个if语句有两个分支。
4)六个条件组合:条件表达式(a>0)‖b0)共有两个条件,a>0和b0,故有四个条件组合;条件表达式(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),便可以把该程序的所有四个分支走遍。但未考虑b0的情况,故不满足条件覆盖。说明满足分支覆盖的测试用例未必满足条件覆盖。
3.条件覆盖
根据条件覆盖准则,只需要采用两个输入数据组合:(a,b,c)=(1,1,-1)、(-1,-1,1),便可以把该程序的三个条件的真假情况都覆盖到。由于表达式(a>0)‖b0)的计算值都为真,不会执行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),便可以把该程序的所有四条路径都覆盖。路径覆盖是最强的覆盖准则。 解析:首先根据源程序画出程序流图比较容易,然后分析学过的所有的逻辑覆盖(如语句覆盖,分支覆盖,路径覆盖等),分析针对每种逻辑覆盖的标准来设计测试用例,最后通过设计测试用例来体现各种逻辑覆盖之间的关系。
第2题:
面向对象测试充分性三个常用标准是基于状态的覆盖率、()和基于代码的覆盖率。
第3题:
适合于白盒测试的设计技术主要有( )、基本路径测试。
A.逻辑覆盖法
B.逻辑路径法
C.路径覆盖法
D.逻辑图法
第4题:
下列选项中不属于覆盖率对软件测试作用的是______。
A) 得知测试是否充分
B) 协助找出代码中的语法错误
C) 指导设计能够增加覆盖率的测试用例
D) 了解测试的弱点在哪里
A.
B.
C.
D.
第5题:
下面属于功能测试中的测试技术的是()
第6题:
对于GSM系统,交通干线覆盖率定义为:覆盖率=(>=-92dBm测试路段里程数)/测试路段总里程数×100%。
第7题:
逻辑覆盖主要测试哪8各方面的覆盖率?
第8题:
关于测试覆盖率,下面的()说法是错误的。
第9题:
第10题:
对
错
第11题:
测试覆盖率是度量代码质量的一种手段
测试覆盖率是度量测试完整性的一种手段
测试覆盖率意味着有多少代码经过测试
不要盲目地追求100%测试覆盖率
第12题:
第13题:
设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率均能达到100%。如果认为该程序的语句覆盖率或分支率无法达到100%,需说明为什么。
第14题:
设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率尽量达到最大。如果认为该程序的语句覆盖率或分支覆盖率无法达到100%,需说明为什么。
第15题:
A.覆盖率,接通率,掉话率,话音质量,MOS,测试点达标率
B.覆盖率,接通率,掉话率,话音质量,MOS
C.覆盖率,里程掉话比,话音质量,MOS
D.覆盖率,掉话率,MOS,接通率
第16题:
下面的逻辑测试覆盖中,测试覆盖最弱的是 ______。
A.条件覆盖
B.条件组合覆盖
C.语句覆盖
D.判定/条件覆盖
第17题:
城市GPRS DT测试需要统计的指标有()。
第18题:
语句的覆盖率主要在下面哪个测试级别的测试设计中考虑()
第19题:
什么是逻辑覆盖测试法?它主要用于什么测试?
第20题:
语音业务铁路测试包含如下指标:()
第21题:
第22题:
第23题:
系统测试
集成测试
组件测试
验收测试