单选1. 属于黑盒测试的方法?( C)A.基于基本路径B.控制流C.基于用户需求测试D.逻辑覆盖2.在Assert类中断言对象为NULL是_____。
(D)A.assertEqualsB.assertTrueC.failD.assertNull3.___________的目的是对最终软件系统进行全面的测试确保最终软件系统产品满足需求(A)A.系统测试B.集成测试C.单元测试D.功能测试4.有一组测试用例使得每一个被测试用例的分支覆盖至少被执行一次,它满足的覆盖标准___________。
(B)A. 语句覆盖B.判定覆盖C.条件覆盖D.路径覆盖5.软件测试的目的是___________。
(C)A.表明软件的正确性B.评价软件质量C.尽可能发现软件中的错误D.判定软件是否合格6.关于白盒测试与黑盒测试的最主要区别,正确的是___________。
(A)A.白盒测试侧重于程序结构,黑盒测试侧重于功能B.白盒测试可以使用测试工具,黑盒测试不能使用工具C.白盒测试需要程序参与,黑盒测试不需要D.黑盒测试比白盒测试应用更广泛7.软件测试类型按开发阶段划分___________。
(B)A.需要测试﹑单元测试﹑集成测试B.单元测试﹑集成测试﹑确认测试﹑系统测试﹑验收测试C.单元测试﹑集成测试﹑确认测试D.调试﹑单元测试﹑功能测试8.在Junit中,testXXX()方法就是一个测试用例,测试方法是______。
(B)A.private void testXXX() B.public void testXXX()C.public float testXXX() D.public int testXXX()9.软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环节?(A)A.单元测试B.集成测试C.目的测试D.确认测试10.增量式集成测试有3种方式:自顶向下增量测试方法,和混合增量测试方式。
(D )A.自中向下增量测试方法B.多次性测试C.维护D.自底向上增量测试方法1)以下不属于软件测试的原则有(D )。
A.程序最好别让由编写该程序的程序员自己来测试B.所有测试标准都是建立在用户需求之上。
C.注意测试中的群集现象(2-8原则)。
D.测试是证明程序有错的一个过程。
3.下面哪些不属于静态测试( C )A.代码规则检查B.程序结构分析C.程序复杂度分析D.内存泄漏“9.以下不属于软件测试模型的是(A )。
A.瀑布模型B.H模型C.W模型D.V模型10.某系统对每个员工一年的出勤天数进行核算和存储(按每月22 工作日计算),使用文本框的模式进行填写。
在此文本框的测试用例编写中使用了等价类划分法,则下面划分错误的是(D )。
A.无效等价类,出勤日>264日。
B.无效等价类,出勤日<0。
C .有效等价类,0<=出勤日<=264。
D.有效等价类,0<出勤日<264。
1、以下属于软件测试的原则有(ABC)A 程序最好由编写该程序的程序员自己来测试B 所有测试标准都是建立在用户需求之上C 注意测试中的群集现象(2-8原则)D 测试是证明程序有错的一个过程2、对于软件测试分类,下面各项都是按照不同阶段来进行的划分,除了(C)A 单元测试B 集成测试C 黑盒测试D 系统测试3、下面哪些属于静态测试(ABD)A 代码规则检查B 程序结构分析C 程序复杂度分析D 内存泄露4、下列关于软件测试时的叙述中错误的是(D)A 软件测试可以作为度量软件与用户需求间差距的手段B 软件测试的主要工作内容包括发现软件中存在的错误C 软件测试的根本目的是尽可能多地发现软件中存在的问题D 没有发现错误的测试也是有价值的5、在某程序中有,A、B、C、D几个模块,若A模块发现并改正的BUG数目较多,则A 模块中残留的BUG与其他模块相比,通常应该(B)A 较少B 较多C 一样多D 不确定6、软件生产周期中,修改错误代码最大的阶段是(D)A 需求阶段B 设计阶段C 编程阶段D 发布运行阶段1、7、下面关于a测试的描述中正确的是(BC)A a测试需要用户代表参加B a测试不需要用户代表参加C a测试是系统测试的一种D a测试是验收测试的一种8、在系统测试中,测试人员主要根据(A)设计测试用例A 需求分析说明书B 概要设计说明书C 详细设计说明书D 系统规格说明书9、下列不属于软件本身的原因产生的缺陷的是(C)A 算法错误B 语法错误C 文档错误D 系统结构错误2、10、即使对程序的所有路径都进行了测试,程序可有可能存在没有检查出来的缺陷,其原因可能是(ABC)A 程序可能因为缺少某些路径而存在的问题B 是即是穷举路径测试也拒不可能保证程序符合其设计规格说明C 穷举路径测试也可能不会暴露数据敏感错误D 不管使用何种方法都不可能找出程序中所有的BUG11、功能测试覆盖中最常见的是(B)A 接口覆盖B 需求覆盖C 入口点覆盖D 出口点覆盖12、下列不属于回归测试目的是(D)A 检查软件的修改达到预定的目的B 检查软件的修改不会影响软件的其他功能的正确性C 检查改动不会带来不可预料的行为或另外的错误D 检查修改的测试用例是否完整13、下列测试不用考虑内部程序结构的是(A)A 功能测试B 结构测试C 逻辑驱动测试D 白盒测试15、以下属于系统性能指标的有(B)A 系统响应时间B 吞吐量C 并发用户数D 资源利用率判断题1.好的测试员力求追求完美。
( X) 2.测试程序仅仅按预期方式运行就行了。
( X) 3.不存在质量很高但可靠性很差的产品。
( √) 4.软件测试员可以对产品说明书进行白盒测试。
( X ) 5.静态白盒测试可以找出遗漏之处和问题。
( √) 6.总是首先设计白盒测试用例。
( X ) 7.可以发布具有配置缺陷的软件产品。
( √) 8.所有软件必须进行某种程度的兼容性测试。
( √) 9.所有软件都有一个用户界面,因此必须测试易用性。
( X ) 10.测试人员负责软件质量。
( √)三.简答题1.计算环路复杂度方法有哪三种?答:(1)V(G)=判定节点数+ 1(2)V(G) = E-N+2(3)V(G)=区域数+ 12.白盒测试有几种方法?答:白盒测试方法分为两大类:静态测试方法和动态测试方法。
静态测试方法:检查软件的表示和描述是否一致,没有冲突或者没有歧义。
动态测试方法:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合盖、路径覆盖。
3.什么是软件测试,软件测试分为哪几个阶段。
答:软件测试是为了发现程序中的错误而执行程序的过程。
软件测试一般分为单元测试、集成测试和系统测试。
4.比较白盒测试和黑盒测试?答:使用白盒测试方法时,测试根据程序的内部逻辑和指定的覆盖标准;黑盒测试法是通过分析程序的接口功能设计测试用例的。
5. 为以下程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件覆盖。
int test(int A,int B){if((A>1) AND (B<10)) thenX=A-B;if((A=2) OR (B>20)) thenX=A+B;return x;}答:语句覆盖测试用例:A=2,B=0;判定覆盖测试用例:A=3,B=0;A=2,B=20;条件覆盖测试用例:A=2,B=0;A=0,B=21;6. 为以下程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件覆盖。
void DoWork (int x,int y,int z){int k=0,j=0;if ( (x>3)&&(z<10) ){ k=x*y-1;j=sqrt(k);} //语句块1if ( (x==4)||(y>5) ){ j=x*y+10; } //语句块2j=j%3; //语句块3}答:语句覆盖测试用例:x=4、y=5、z=5;判定覆盖测试用例::x=4、y=5、z=5;x=2、y=5、z=5;条件覆盖测试用例:x=4、y=6、z=5 ;x=2、y=5、z=15;7.看代码程序:void Sort ( int iRecordNum, int iType )1 {2 int x=0;3 int y=0;4 while ( iRecordNum> 0 )5 {6 If ( iType==0 )7 x=y+2;8 else9 If ( iType==1 )10 x=y+10;11 else12 x=y+20;13 }14 }要求(1)给以上代码画出控制流图(2)控制流图的环复杂度V(G),写出独立路径。
(2)V(G)= 4路径1:4→14路径2:4→6→7→13 →4 →14路径3:4→6→9→10→13→4→14路径4:4→6→9→12→13→4→148. 设有一个档案管理系统,要求用户输入以年月表示的日期。
假设日期限定在1999年1月~2029年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。
现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。
划分等价类并编号,下表等价类划分的结果输入等价类有效等价类无效等价类日期的类型及长度年份范围月份范围1)划分等价类并编号,下表等价类划分的结果输入等价类有效等价类无效等价类日期的类型及长度①6位数字字符②有非数字字符③少于6位数字字符④多于6位数字字符年份范围⑤在1990~2049之间⑥小于1990⑦大于2049月份范围⑧在01~12之间⑨等于00⑩大于122)设计测试用例,以便覆盖所有的有效等价类在表中列出了3个有效等价类,编号分别为①、⑤、⑧,设计的测试用例如下:测试数据期望结果覆盖的有效等价类200211 输入有效①、⑤、⑧3)为每一个无效等价类设计一个测试用例,设计结果如下:测试数据期望结果覆盖的无效等价类95June 无效输入②20036 无效输入③2001006 无效输入④198912 无效输入⑥200401 无效输入⑦200100 无效输入⑨200113 无效输入⑩1.什么是软件测试?软件测试的目的是什么?。
软件测试是在程序的开发过程中对程序的功能逻辑等进行验证的过程目的是:发现程序中的错误2.软件的缺陷等级应如何划分?。
致命的:造成系统或应用程序崩溃、死机、系统悬挂严重的:功能或特性没有实现一般的:没有达到预期效果微小的:对系统几乎没有影响3.简述白盒测试和黑盒测试的区别使用白盒测试方法时,测试根据程序的内部逻辑和指定的覆盖标准;黑盒测试法是通过分析程序的接口功能设计测试用例的。
黑盒测试是从用户观点,按规格说明书要求的输入数据与输出数据的对应关系设计测试用例,是根据程序外部特征进行测试。
白盒测试是根据程序内部逻辑结构进行测试。