好文档 - 专业文书写作范文服务资料分享网站

(完整word版)《软件测试技术基础教程》习题解答

天下 分享 时间: 加入收藏 我要投稿 点赞

. . .

A.4 B. 5 C. 6 D. 1

图2 图3

4. 以上图3所示程序控制流程图(程序图)中有 C 条线性无关(即相互独立)的基本路径。

A.1 B. 2 C. 3 D. 4

5. 条件组合覆盖是一种逻辑覆盖,它的含义是设计足够的测试用例,使得每个判员中条件的各种可能组合都至少出现一次,满足条件组合覆盖级别的测试用例也是满足 A 级别的。

A.语句覆盖、判定覆盖、条件覆盖、判定条件覆盖

B.判定覆盖、条件覆盖、判定条件覆盖、修正判定条件覆盖 C.语句覆盖、判定覆盖、判定条件覆盖、修正判定条件覆盖 D.路径覆盖、判定覆盖、条件覆盖、判定条件覆盖

6. 逻辑路径覆盖法是白盒测试用例的重要设计方法,其中语句覆盖法是较为常用的方法,针对下面的语句段,采用语句覆盖法完成测试用例设计,测试用例见下表,对表中的空缺项(True或者False),正确的选择是 A 。 语句段:

if(A&&(B||C)) x=1;

else x=0; 用例表: A B C 用例1 用例2 TRUE ① FALSE TRUE FALSE FALSE ② A&&(B||C) ③ A.①TRUE ②FALSE ③TRUE B.①TRUE ②FALSE ③FALSE C.①FALSE ②FALSE ③TRUE D.①TRUE ②TRUE ③FALSE

7. 对于白盒测试技术的理解,正确的是 C 。

A. 判断覆盖是条件覆盖的子集,满足条件覆盖指标就一定满足判断覆盖的指标。 B. 条件组合覆盖能够达到路径覆盖的要求。

C. 白盒测试工作量大,只适用于单元测试,且不易生成测试数据。

..........

. . .

D. 进行基路径测试时,对于源程序中的循环体,测试用例组中的输入数据使其执行一次或零次就可以了。 三、简答题

1.阐述白盒测试的各种方法。 参考答案:

白盒测试方法可以分为两大类:静态测试方法和动态测试方法,动态测试方法是设计一系列的测试用例,通过输入预先设定好的数据来动态地运行程序,从而达到发现程序错误的目的。静态测试方法则不在计算机上实际执行程序,而是以一些人工的模拟技术或使用测试软件对软件进行分析和测试。动态测试方法主要有逻辑覆盖、独立路径测试等。静态测试方法主要有静态结构分析、静态质量度量、代码检查方法等。

2.简述逻辑覆盖测试的6种覆盖策略及各自的特点。 参考答案:

根据不同的测试要求,覆盖测试可以分为语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。

语句覆盖就是设计足够多的测试用例,使得被测试程序中的每条可执行语句至少被执行一次。

判定覆盖又称分支覆盖,就是设计足够多的测试用例,使得被测试程序中的每个判断的“真”、“假”分支至少被执行一次。

条件覆盖是指设计足够多的测试用例,使得被测试程序中的每个判断语句中的每个逻辑条件的可能值至少被满足一次。或者说设计足够多的测试用例,使得被测试程序中的每个逻辑条件的可能值至少被满足一次。

判定/条件覆盖是指设计足够多的测试用例,使得被测试程序中的每个判断本身的判定结果(真假)至少满足一次,同时,每个逻辑条件的可能值也至少被满足一次。即同时满足100%判定覆盖和100%条件覆盖的标准。在保证完成要求的情况下,测试用例的数目越少越好。

条件组合覆盖是指设计足够多的测试用例,使得被测试程序中的每个判断的所有可能条件取值的组合至少被满足一次。

路径覆盖就是设计足够多的测试用例,使得被测试程序中的每条路径至少被覆盖一次。

3.简述独立路径测试的基本步骤。 参考答案:

独立路径测试的基本步骤是:

步骤1:根据源程序导出程序控制流图。

步骤2:根据程序环形复杂度的计算公式,求出程序环形复杂度。 步骤3:根据上面环形复杂度的计算结果,设计测试用例。 4. 使用基本路径法设计出的测试用例能够保证程序的每一条可执行语句在测试过程中至少

执行一次。以下代码由Java语言书写,请按要求回答问题。 int GetMaxDay( int year, int month ) {

1 int maxday = 0;

2 if ( month >= 1 && month <= 12 )

..........

. . .

3 {

4 if ( month == 2 ) 5 {

6 if ( year % 4 == 0 ) 7 {

8 if ( year % 100 == 0 ) 9 {

10 if ( year % 400 == 0 ) 11 maxday = 29; 12 else

13 maxday = 28; 14 } 15 else

16 maxday = 29; 17 } 18 else

19 maxday = 28; 20 }

21 else if ( month == 4 || month == 6 || month == 9 || month == 11 ) 22 maxday = 30; 23 else

24 maxday = 31; 25 }

26 return maxday;}

(1)请画出以上代码的控制流图。

(2)请计算上述控制流图的环复杂度V(G)(独立线性路径数)

(3)假设输入的取值范围是1000 < year < 2001,请使用基本路径测试法为变量year、month设计测试用例(写出year取值、month取值、maxday预期结果),使其满足基本路径覆盖要求。

参考答案:

(1)请画出以上代码的控制流图。 注意:需要将复合条件分开单独画成节点。

例如:month >= 1 && month <= 12分别用节点2-1,2-2表示

month == 4 || month == 6 || month == 9 || month == 11分别用节点21-1,21-2,21-3,21-4表示

..........

. . .

2-1 2-2 4 8 10 11 17 14 6 21-1 21-2 21-3 20 21-4 22 24 25 26

(2)请计算上述控制流图的环复杂度V(G)(独立线性路径数) 区域法:V(G)=11

边与节点的关系:V(G)=27-18+2=11 判定节点的关系:V(G)=10+1=11

(3)假设输入的取值范围是1000 < year < 2001,请使用基本路径测试法为变量year、month设计测试用例(写出year取值、month取值、maxday预期结果),使其满足基本路径覆盖要求。 测试用例编号 1 2 3 4 5 year 1500 1500 1500 1500 1500 month 0 16 4 6 9 maxday 0 0 30 30 30 覆盖的路径 2-1,26 2-2,26 2-1,2-2,4,21-1,22,25,26 2-1,2-2,4,21-1,21-2,22,25,26 2-1,2-2,4,21-1,21-2,21-3,22,25,26 2-1,2-2,4,21-1,21-2,21-3,21-4,22,25,26 2-1,2-2,4,21-1,21-2,21-3,6 1500 11 30 7 1500 7 31 ..........

. . .

21-4,24,25,26 8 9 10 1201 1240 1300 2 2 2 28 29 28 2-1,2-2,4,6,20,25,26 2-1,2-2,4,6,8,17,20,25,26 2-1,2-2,4,6,8,10,14,17,20,25,26 2-1,2-2,4,6,8,10,11,14,17,20,25,26 11 2000 2 29

第5章 黑盒测试技术 一、选择题

1.用边界值测试法,假定X为整数,10≤X≤100,那么X在测试中应该取 B 边界值。

A.X=10,X=100 B. X=9,X=10,X=100,X=101 C.X=10,X=11,X=99,X=100 D. X=9,X=10,X=50,X=100

2. 在某大学学籍管理信息系统中,假设学生年龄的输入范围为16~40,则根据黑盒测试中的等价类划分技术,下面划分正确的是 B 。 A.可划分为2个有效等价类,2个无效等价类 B.可划分为1个有效等价类,2个无效等价类 C.可划分为2个有效等价类,1个无效等价类 D.可划分为1个有效等价类,1个无效等价类

3. 黑盒测试是通过软件的外部表现来发现软件缺陷和错误的测试方法,具体地说,黑盒测试用例设计技术包括 A 等。

A.等价类划分法、因果图法、边界值分析法、错误推测法、决策表法 B.等价类划分法、因果图法、路径覆盖法、正交试验法、符号法 C.等价类划分法、因果图法、边界值分析法、功能图法、基本路径法 D.等价类划分法、因果图法、边界值分析法、条件组合覆盖法、场景法 4. C 方法根据输出对输入的依赖关系设计测试用例。 A.路径测试 B.等价类 C.因果图 D.边界值

5. 如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选用 B 和决策表法。

A.等价类划分 B.因果图法 C.边界值分析 D.场景法

6. 左侧图4控制流图的环复杂度Ⅴ(g)和基本复杂度EV(g)是 D 。

A.V(g)=5 EV(g)=l B.V(g)=6 EV(g)=6

C.V(g)=5 EV(g)=5 D.V(g)=6 EV(g)=l

..........

6rvtz535fb9acj39qpyw5s23r4b01m00epx
领取福利

微信扫码领取福利

微信扫码分享