白盒测试习题.doc_第1页
白盒测试习题.doc_第2页
白盒测试习题.doc_第3页
白盒测试习题.doc_第4页
白盒测试习题.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

习题010401 逻辑路径覆盖法是白盒测试用例的重要设计方法,其中语旬覆盖法是较为常用的方法,针对下面的语句段,采用语句覆盖法完成测试用例设计,测试用例见下表,对表中的空缺项(True或者False),正确的选择是( )。 语句段: if(A&(B|C) x=1; else x=0; 用例表:用例1用例2ATRUEFALSEBtrueFALSECTRUEtrueA&(B|C)trueFALSEA. TRUE FALSE TRUE B. TRUE FALSE FALSEC. FALSE FALSE TRUE D. TRUE TRUE FALSE输入数据条件预期结果A=TRUE,B=TRUE,C=TRUET Tx=1A=F,B=F,C=FF Tx=00402 针对以下程序段,对于(A,B,C)的取值,以下( )测试用例能够满足语句覆盖的要求。 IF(A+10)=2 OR (B-20)10 AND (C-30)8&y5) if(x16|y10) s1; else if(x0|y0) s2; else s3;输入数据条件预期结果x=17,y=11T T TS1x=7,y=4F F TS2x=-7,y=4F F FS30404 针对下列程序段,需要( )个测试用例才可以满足语句覆盖的要求。 switch ( value ) case 0: other = 30; break; case 1: other = 50; break; case 2: other = 300; case 3: other = other / value; break; default: other = other * value;A2 B3 C4 D5输入数据条件预期结果Value=0T F F Fother=30Value=1F T F Fother=50Value=3F F T Fother=100Value=4F F F Tother= other/40405 对下面的个人所得税程序中,满足语句覆盖测试用例的是( ) 。 if(income800) tarrate=0 else if(income=1500)tarrate=0.05 elseif(income0) if(10=Type) x=y*2; else if(100=Type) x=y+10; else x=y-20; A 5 B4 C3 D2数据输入条件预期结果type=10TFFx=y*2type=100FTFx=y+10type!=10&type!=100FFTx=y-200409 为以下程序段,设计足够的测试用例满足判定覆盖 。 if(x8&y5) if(x16|y10) s1; else if(x0|y0) s2; else s3;输入数据条件预期结果x=17,y=11T T TS1x=7,y=4F F TS2x=-7,y=4F F FS30410 针对程序段:IF(X10) AND (Y20) THEN W=W/A , 对于(X,Y)的取值,以下( )组测 试用例能够满足判定覆盖的要求。A. (30,15) (40,10) B. (3,0) (30,30) C. (5,25) (10,20) D. (20,10) (1,100) 输入数据条件预期结果x=11,y=19Tw=w/ax=9,y=21F无0411 假设 A, B 为布尔变量,对于逻辑表达式(A&B|C),需要( )个测试用例才能完成判定覆盖(DC) 。A.2 B.3 C.4 D.5输入数据条件预期结果A=T,B=T,C=TTA=T,B=F,C=TFA=T,B=F,C=FF0412 针对下列程序段,需要( )个测试用例可以满足分支覆盖的要求。int IsLeap(int year) if ( year % 4 = 0 ) if ( year % 100 = 0 ) if ( year % 400 = 0 ) leap = 1; else leap = 0; else leap = 1; else leap = 0; return leap; A 3 B4 C6 D7输入数据条件预期结果year=400TTTleap=1year=100TTFleap=0year=16TFFleap=1year=6FFFleap=00413 针对以下 C 语言程序段,假设 sta10= -1,对于 x 的取值,需要( )个测试用例能够满足分支覆盖的要求。 int MathMine(int x) int m0; int i; for(ix-1;i31) break; if(stai-1) m+; return m;A.3 B.4 C.5 D.6输入数据条件预期结果x=00x=330x=1110414 以下代码由C语言书写,在输入三个整数后,能够输出最大数和最小数。 int main(void) int a,b,c,max,min; printf(“input three number: ”); scanf(“%d%d%d”,&a,&b,&c); if(ab) /*判断1*/ max=a; min=b; else max=b; min=a; if(maxc) /*判断3*/ min=c; printf(“max=%dnmin=%dn ”,max,min); return 0; 问题1:请画出该程序的控制流图,并分析该控制流图中有多少(4)条线性独立路径(V(G)的值)。问题2:为了用分支(判定)覆盖方法测试该程序,需要设计测试用例,使其能对该程序中的每个判断语句的各种分支情况全部进行过测试。对两组输入数据(1) a=3,b=5,c=7; (2) a=4,b=6,c=5,请分别写出程序中各个判断语句的执行结果(以T表示真,以F表示假),填入答题纸的相应栏中。问题3:上述两组测试数据是否实现该程序的分支 (判定)覆盖?如果能,请说明理由。如果不能,请再增设一组输入数据,使其能实现分支(判定)覆盖。0415 针对以下程序段,对于(A,B)的取值,以下 ( )测试用例能够满足条件覆盖的要求。 IF(A-10)=20 OR (B+20)10) THEN C=0 IF(A-30)10 AND (B-30)0) THEN B=30 A=50 B=-10 A=40 B=40 A=30 B=-10 A=30 B=30 A. B. C. D. 输入数据条件预期结果A=41,B=-11FFFTNOA=30,B=30TTTFC=0,B=300416 对下面的个人所得税程序中,满足条件覆盖测试用例的是( )。 if(income800)tarrate=0 else if(income=1500)tarrate=0.05 elseif(income10) & (y0) w=20-x; else w=20+y; 对于(X,Y)的取值,请设计最少的测试用例能够满足条件覆盖的要求。输入数据条件预期结果x=0,y=20FFTTFTW=20x=20,y=0TTFFTFW=200418为以下所示的程序段设计一组测试用例,要求满足条件覆盖,并画出相应的程序流程图。void DoWork (int x,int y,int z) int k=0,j=0; if ( (x3)&(z5) ) j=x*y+10; /语句块2 j=j%3; /语句块3 数据输入条件预期结果x=1,y=5,z=9TFFj=2x=4,y=6,z=11FTFj=34x=5,y=4,z=11FFTj=j%30419 输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。程序如下,请按要求设计测试用例。要求:1、画出控制流图; 2、分析复杂性; 3、设计满足条件覆盖的测试用例。 4、给出基本路径并设计测试用例;#include”stdio.h”main() char c; int letters=0,space=0,digit=0,other=0; printf(“请输入一行字符:n”); while(c=getchar()!=n) if(c=a&c=A&c=0&c 1000 ) & ( n 2000 ) ) g = n % 10; s = n % 100 / 10; b = n / 100 % 10; q = n / 1000; if( ( q + g ) = ( s + b ) ) printf(%-5d, n); printf(n); return ;n 问题 1:请找出程序中所有的逻辑判断语句。n 问题 2:请分析并给出分别满足 100DC(判定覆盖)和 100CC(条件覆盖)时所需的逻辑条件。问题 3:假设 n 的取值范围是 0 n 10) THEN C=0 IF(A-30)10 AND (B-30)0) THEN B=30 A=50 B=-10 A=40 B=40 A=30 B=-10 A=30 B=30 A. B. C. D. 输入数据条件预期结果A=41,B=-11FFFTNOA=30,B=30TTTFC=0,B=300422 对下面的个人所得税程序中,满足判定/条件覆盖测试用例的是( )。 if(income800)tarrate=0 else if(income=1500)tarrate=0.05 elseif(income10) & (y0) w=20-x; else w=20+y; 对于(X,Y)的取值,请设计最少的测试用例能够满足判定/条件覆盖的要求。输入数据条件预期结果x=0,y=20FFTTFTW=20x=20,y=0TTFFTFW=200424为以下所示的程序段设计一组测试用例,要求满足判定/条件覆盖,并画出相应的程序流程图。void DoWork (int x,int y,int z) int k=0,j=0; if ( (x3)&(z5) ) j=x*y+10; /语句块2 j=j%3; /语句块3 12546783FTFFTtTtTt数据输入条件预期结果x=1,y=5,z=9TFFj=2x=4,y=6,z=11FTFj=34x=5,y=4,z=11FFTj=j%30425 输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。程序如下,请按要求设计测试用例。要求:1、画出控制流图; 2、分析复杂性; 3、设计满足判定/条件覆盖的测试用例。 4、给出基本路径并设计测试用例;#include”stdio.h”main() char c; int letters=0,space=0,digit=0,other=0; printf(“请输入一行字符:n”); while(c=getchar()!=n) if(c=a&c=A&c=0&c 1000 ) & ( n 2000 ) ) g = n % 10; s = n % 100 / 10; b = n / 100 % 10; q = n / 1000; if( ( q + g ) = ( s + b ) ) printf(%-5d, n); printf(n); return ;n 问题 1:请找出程序中所有的逻辑判断语句。n 问题 2:请分析并给出分别满足 100DCC(判定/条件覆盖)时所需的逻辑条件。n 问题 3:假设 n 的取值范围是 0 n 3000,请用逻辑覆盖法为 n 的取值设计测试用例,使用例集满足基本路径覆盖标准。数据输入条件预期结果N=1212TTTTT1212N=20FFWUN=1333TTFTFWUN=3000TFFWU 0427 针对以下程序段,对于(A,B,C)的取值,设计最少的测试用例满足判定/条件覆盖的要求。 if(a-10)=0 | (b+20)10 & (c-30)-20 B-20 C10) THEN C=0 IF(A-30)10 AND (B-30)10) & (y0) w=20-x; else w=20+y; 对于(x,y)的取值,请设计最少的测试用例能够满足条件组合覆盖的要求。0431 多条件覆盖是一种逻辑覆盖,它的含义是设计足够的测试用例,使得每个判定中条件的各种可能组合都至少出现一次,满足多条件覆盖级别的测试用例也是满足_级别的。A语句覆盖、判定覆盖、条件覆盖、条件判定组合覆盖B判定覆盖、条件覆盖;条件判定组合覆盖、修正条件判定覆盖C语句覆盖、判定覆盖、条件判定组合覆盖、修正条件判定覆盖D路径覆盖、判定覆盖、条件覆盖、条件判定组合覆盖0432 关于白盒测试的测试用例设计方法叙述,正确的是( ) 。A完成 SC(语句判定)所需的测试用例数目一定多于完成 DC(逻辑判定)所需的测试用例数目B达到 100CC(条件判定)要求就一定能够满足 100SC 的要求C达到 100CDC(条件判定组合覆盖)要求就一定能够满足 100CC 的要求D任何情况下,都可以达到 100路径覆盖的要求0433 针对逻辑覆盖( )叙述是不正确的。A. 达到100DC要求就一定能够满足100SC的要求B. 达到100CC要求就一定能够满足100SC的要求C. 达到100CDC要求就一定能够满足100CC的要求D. 达到100%CDC要求就一定能够满足100%DC的要求0434 以下控制流程图的环路复杂性V(G) 等于( )。A. 5 B. 6 C. 9 D.120435 在程序控制流图中,有8条边,6各节点,则控制流程图的环路复杂性V(G)等于( )。A. 2 B. 4 C. 6 D. 80436 做0414的第1问;0419的第1,2,4问;0420的第3问。0437 基本路径法设计出的测试用例能够保证在测试中程序的每一条可执行语句至少执行一次。以下代码由C+ +语言书写,请按要求回答问题。void ReadPara(CString temp) if(temp= =) M_oper.SetCurSel(0); else if(temp= =)m_oper.SetCurSel(1); else if(temp= = =) m_oper.SetCurSel(2);else if(temp= =) m_oper.SetCurSel(3);else if(temp= 1 & month = 12 ) if ( month = 2 ) if ( year % 4 = 0 ) if ( year % 100 = 0 ) if ( year % 400 = 0 ) maxday = 29; else maxday = 28; else maxday = 29; else maxday = 28; else if ( month = 4 | month = 6 | month = 9 | month = 11 ) maxday = 30; else maxday = 31; return maxday; n 问题1:请画出以上代码的控制流图。n 问题2:请计算上述控制流图的环路复杂度V(G)。7n 问题3:假设year的取值范围1000year2001,请使用基本路径测试法为变量year、month设计测试用例(写出year取值、month取值、maxday预期结果),使之满足基本路径覆盖要求。0439 逻辑覆盖法是设计白盒测试用例的主要方

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论