在基本路径测试中,以详细设计为基础,导出控制流程图的拓扑结构: 程序图,在计算了程序图的()之后,确定只包含独立路径的基本路径图,其中独立路径是包括一组()的一条路径。从程序图来看,一条独立路径是至少包含有一条在其他独立路径中未有过的边的路径。

题目

在基本路径测试中,以详细设计为基础,导出控制流程图的拓扑结构: 程序图,在计算了程序图的()之后,确定只包含独立路径的基本路径图,其中独立路径是包括一组()的一条路径。从程序图来看,一条独立路径是至少包含有一条在其他独立路径中未有过的边的路径。

参考答案和解析
正确答案:环形复杂性;以前没有处理的语句或条件
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

在有向图G的拓扑序列中,若顶点Vi在顶点Vj之前,则下列情形可能出现的是()

AG中有弧

BG中有一条从Vi到Vj的路径

CG中没有

DG中有一条从Vj到Vi的路径


参考答案:ABC

第2题:

在有向图G的拓扑序列中,若顶点Vi在顶点Vj之前,则下列情形不可能出现的是()。

A.G中有弧

B.G中有一条从Vi到Vj的路径

C.G中没有弧

D.G中有一条从Vj到Vi的路径


正确答案:D

第3题:

路径测试是整个结构测试的重要组成,但在研究路径测试时,通常又是使用程序控制流图来代替

A.程序框图

B.结构图

C.数据流图

D.程序流程图


正确答案:A

第4题:

下列( )是对程序流程图进行简化后得到的,它可以更加突出的表示程序控制流的结构,且不包含复合条件。

A.DD-路径图

B.控制流图

C.MM-路径图

D.模块调用图


正确答案:B

第5题:

适合于白盒测试的设计技术主要有( )、基本路径测试。

A.逻辑覆盖法

B.逻辑路径法

C.路径覆盖法

D.逻辑图法


正确答案:A

第6题:

论述题3:针对以下C语言程序,请按要求回答问题

下面是一个程序段(C语言),试设计基本路径测试的测试用例,设计出的测试用例要保证每一个基本独立路径至少要执行一次。

函数说明:当i flag=0;返回i count+100

当i flag=l;返回i count*10

否则 返回 i count*20

输入参数:int i count int i flag

输出参数:int i retum

程序代码如下:

(1)画出该函数的控制流程图。

(2)采用基本路径测试法设计一组测试用例,保证每个基本独立路径都至少执行一次。


正确答案:问题1: 解答: 根据程序的源代码容易画出对应的控制流图如图17-4所示。 (其中圈中的数字代表的是语句的行号) 问题2: 解答: 第一步根据上述控制流图计算该程序的环路复杂性。 由图可以看出判定节点数为3边数为10节点总数为8故 V(G)=10-8+2=4 或V(G)=3+1=4 第二步根据环路复杂度为4可确定4条基本独立路径。 Path1:4—24 Path2:4—6—8—24 Path3:4—6—13—15—22—4—24 Path4:4—6—13—19—22—4—24 第三步设计测试用例 根据上面4条基本独立路径可以设计测试用例如下: 测试用例1 输入数据:i_flag=0或者是i_flag0的某个值。 预期输出结果:i temp=0。 测试用例2 输入数据:i_count=1i_flag=0。 预期输出结果:i temp=101。 测试用例3 输入数据:i_count=1i_flag=1。 预期输出结果:i temp=10。 测试用例4 输入数据:i count=1i_flag=2。 预期输出结果;i temp=20。 但这些测试用例是可以简化的由于路径path1是path4的真子集所以path1是可以不要的。故针对该程序最少的测试用例数为3即上述测试用例2测试用例3测试用例4。
问题1: 解答: 根据程序的源代码,容易画出对应的控制流图,如图17-4所示。 (其中圈中的数字代表的是语句的行号) 问题2: 解答: 第一步,根据上述控制流图计算该程序的环路复杂性。 由图可以看出,判定节点数为3,边数为10,节点总数为8,故 V(G)=10-8+2=4 或V(G)=3+1=4 第二步,根据环路复杂度为4,可确定4条基本独立路径。 Path1:4—24 Path2:4—6—8—24 Path3:4—6—13—15—22—4—24 Path4:4—6—13—19—22—4—24 第三步,设计测试用例 根据上面4条基本独立路径,可以设计测试用例如下: 测试用例1 输入数据:i_flag=0,或者是i_flag0的某个值。 预期输出结果:i temp=0。 测试用例2 输入数据:i_count=1,i_flag=0。 预期输出结果:i temp=101。 测试用例3 输入数据:i_count=1,i_flag=1。 预期输出结果:i temp=10。 测试用例4 输入数据:i count=1,i_flag=2。 预期输出结果;i temp=20。 但这些测试用例是可以简化的,由于路径path1是path4的真子集,所以path1是可以不要的。故针对该程序最少的测试用例数为3,即上述测试用例2,测试用例3,测试用例4。 解析:首先根据程序的源代码,画出控制流图。然后通过控制流图可以计算出该程序的复杂度,找出所有的独立路径,根据基本路径测试法设计测试用例。

第7题:

基本路径测试法主要包括( )。

A.程序的控制流图

B.程序环路复杂性

C.导出测试用例

D.准备测试用例


正确答案:ABCD

第8题:

以下关于覆盖测试的说法中,错误的是

A) 语句覆盖要求每行代码至少执行一次

B) 在路径测试中必须用不同的数据重复测试同一条路径

C) 路径测试不是完全测试,即使每条路径都执行了一次,程序还是可能存在缺陷

D) 分支覆盖应使程序中每个判定的真假分支至少执行一次

A.

B.

C.

D.


正确答案:B

第9题:

第n最短路径问题

*第二最短路径:每举最短路径上的每条边,每次删除一条,然后求新图的最短路径,取这些路径中最短的一条即为第二最短路径。

*同理,第n最短路径可在求解第n-1最短路径的基础上求解。


正确答案:

 

 

第10题:

使用基本路径测试方法,为以下程序段设计测试用例。

(1)画出程序的控制流图,编号已经给出。

(2)计算程序的循环复杂度,导出程序基本路径集中的独立路径条数。

(3)导出基本路径集,确定程序的独立路径。

(4)根据(3)中的独立路径,设计测试用例(确保基本路径集中的每一条路径的执行)的输入数据和预期输出。

void Do (int X,int A,int B)

{

1 if ( (A>1)&&(B=0) )

2 X = X/A;

3 if ( (A=2)||(X>1) )

4 X = X+1;

5 }

由于控制流图假设的是单条件,因此对于复合条件,可将其分解为多个单个条件,并映射成控制流图。

1: A>1;2: B=0 ;3: X = X/A ;4: A=2 ;5:X>1 ;6: X = X+1;7: }


正确答案:
画出控制流图:如右图所示计算环形复杂度:10(条边)-7(个节点)+2=5导出独立路径(用语句编号表示)路径1:1→2→3→4→5→6→7路径2:1→4→5→6→7路径3:1→2→4→6→7路径4:1→2→4→5→7路径5:1→2→3→4→5→7

更多相关问题