2023年12月19日发(作者:)

单选

1. 属于黑盒测试的方法?( C )

A.基于基本路径 B.控制流 C.基于用户需求测试 D.逻辑覆盖

2.在Assert类中断言对象为NULL是_____。(

D )

Equals True Null

3.___________的目的是对最终软件系统进行全面的测试确保最终软件系统产品满足需求(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 不管使用何种方法都不可能找出程序中所有的BUG

11、功能测试覆盖中最常见的是(B)

A 接口覆盖

B 需求覆盖

C 入口点覆盖

D 出口点覆盖

12、下列不属于回归测试目的是(D)

A 检查软件的修改达到预定的目的

B 检查软件的修改不会影响软件的其他功能的正确性

C 检查改动不会带来不可预料的行为或另外的错误

D 检查修改的测试用例是否完整

13、下列测试不用考虑内部程序结构的是(A)

A 功能测试

B 结构测试

C 逻辑驱动测试

D 白盒测试

15、以下属于系统性能指标的有(B)

A 系统响应时间

B 吞吐量

C 并发用户数

D 资源利用率

判断题

1.好的测试员力求追求完美。

2.测试程序仅仅按预期方式运行就行了。

3.不存在质量很高但可靠性很差的产品。

4.软件测试员可以对产品说明书进行白盒测试。

5.静态白盒测试可以找出遗漏之处和问题。

6.总是首先设计白盒测试用例。

7.可以发布具有配置缺陷的软件产品。

8.所有软件必须进行某种程度的兼容性测试。

9.所有软件都有一个用户界面,因此必须测试易用性。

10.测试人员负责软件质量。

三.简答题

1. 计算环路复杂度方法有哪三种?

答:(1)V(G)=判定节点数+ 1

(2)V(G) = E-N+2

(3)V(G)=区域数+ 1

(

X )

(

X )

(

√ )

( X )

(

√ )

( X )

(

√ )

(

√ )

( X )

(

√ )

2. 白盒测试有几种方法?

答:白盒测试方法分为两大类:静态测试方法和动态测试方法。

静态测试方法:检查软件的表示和描述是否一致,没有冲突或者没有歧义。

动态测试方法:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合盖、路径覆盖。

3. 什么是软件测试,软件测试分为哪几个阶段。

答:软件测试是为了发现程序中的错误而执行程序的过程。

软件测试一般分为单元测试、集成测试和系统测试。

4. 比较白盒测试和黑盒测试?

答:使用白盒测试方法时,测试根据程序的内部逻辑和指定的覆盖标准;

黑盒测试法是通过分析程序的接口功能设计测试用例的。

5. 为以下程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件覆盖。

int test(int A,int B)

{

if((A>1) AND (B<10)) then

X=A-B;

if((A=2) OR (B>20)) then

X=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);

} //语句块1

if ( (x==4)||(y>5) )

{ j=x*y+10; } //语句块2

j=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 else

9 If ( iType==1 )

10 x=y+10;

11 else

12 x=y+20;

13 }

14 }

要求(1)给以上代码画出控制流图(2)控制流图的环复杂度V(G),写出独立路径。

4

(1)

6

7 9

12

10

14

13

(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→14

8. 设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在1999年1月~2029年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。

划分等价类并编号,下表等价类划分的结果

输入等价类 有效等价类 无效等价类

日期的类型及长度

年份范围

月份范围

1)划分等价类并编号,下表等价类划分的结果

输入等价类 有效等价类 无效等价类

日期的类型及长度 ①6位数字字符 ②有非数字字符

③少于6位数字字符

④多于6位数字字符

年份范围 ⑤在1990~2049之间 ⑥小于1990

⑦大于2049

月份范围 ⑧在01~12之间 ⑨等于00

⑩大于12

2)设计测试用例,以便覆盖所有的有效等价类在表中列出了3个有效等价类,编号分别为①、⑤、⑧,设计的测试用例如下:

测试数据 期望结果 覆盖的有效等价类

200211 输入有效 ①、⑤、⑧

3)为每一个无效等价类设计一个测试用例,设计结果如下:

测试数据 期望结果 覆盖的无效等价类

95June 无效输入 ②

20036 无效输入 ③

2001006 无效输入 ④

198912 无效输入 ⑥

200401 无效输入 ⑦

200100 无效输入 ⑨

200113 无效输入 ⑩

1.什么是软件测试?软件测试的目的是什么?。

软件测试是在程序的开发过程中对程序的功能逻辑等进行验证的过程

目的是:发现程序中的错误

2.软件的缺陷等级应如何划分?。

致命的:造成系统或应用程序崩溃、死机、系统悬挂

严重的:功能或特性没有实现

一般的:没有达到预期效果

微小的:对系统几乎没有影响

3.简述白盒测试和黑盒测试的区别

使用白盒测试方法时,测试根据程序的内部逻辑和指定的覆盖标准;

黑盒测试法是通过分析程序的接口功能设计测试用例的。

黑盒测试是从用户观点,按规格说明书要求的输入数据与输出数据的对应关系设计测试用例,

是根据程序外部特征进行测试。

白盒测试是根据程序内部逻辑结构进行测试。

白盒测试包括静态和动态白盒测试,主要是测试程序的逻辑结构

黑盒测试是从用户的角度出发,验证系统的功能是否实现,是站在系统的外部进行的

4.画出你所知道的软件测试模型。。

5.软件测试用例的依据是什么?一个测试用例,应该包含哪些要素?。

需求规格说明书

标识符

测试项

测试环境要求

输入标准

输出标准

异常分支

测试用例间的关联

6. 根据所学知识, 针对以下界面进行界面测试, 请写出你的测试思路与方法。

(以一个B/S结构的登陆功能点为被测对象,该测试用例为黑盒测试用例。假设用户使用的浏览器为IE6.0 SP4

功能描述如下:

(1)用户在地址栏输入相应地址,要求显示登录界面

(2)输入用户名和密码,登录,系统自动校验,并给出相应提示信息

(3)如果用户名或密码任一信息未输入,登录后系统给出相应提示信息

(4)连续3次未通过验证时,自动关闭IE

按以上要求需求设计相应的测试用例)