软件测试练习题总修订版.docx
- 文档编号:25747548
- 上传时间:2023-06-12
- 格式:DOCX
- 页数:15
- 大小:41.85KB
软件测试练习题总修订版.docx
《软件测试练习题总修订版.docx》由会员分享,可在线阅读,更多相关《软件测试练习题总修订版.docx(15页珍藏版)》请在冰豆网上搜索。
软件测试练习题总修订版
《软件测试技术》综合复习题
注意:
其中在题号前添加“*”的题目是作业,在考试前交。
一、判断正误题
1.测试是调试的一个部分()
2.软件测试的目的是尽可能多的找出软件的缺陷。
()
3.程序中隐藏错误的概率与其已发现的错误数成正比()
4.测试人员要坚持原则,缺陷未修复完坚决不予通过。
()
5.测试的目的是发现软件中的错误。
()
6.代码评审是检查源代码是否达到模块设计的要求。
()
7.自底向上集成需要测试员编写驱动程序。
()
8.软件测试的目的是尽可能多的找出软件的缺陷( )
9.要我们做了充分的测试,就能保证软件没有BUG( )
10.验收测试是有最终用户来实施的( )
11.软件测试是应该再编码之后进行 ( )
12.对软件包装等宣称资料的测试不属于软件测试( )
13.软件测试能够保障软件的质量()
14.测试程序仅仅按预期方式运行就行了。
()
15.软件测试员可以对产品说明书进行白盒测试。
()
16.静态白盒测试可以找出遗漏之处和问题。
()
17.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
18.测试是为了验证该软件已正确地实现了用户的要求。
19.尽量采用复合的条件测试,以避免嵌套的分支结构。
20.在做程序的单元测试时,桩模块比驱动模块容易编写。
21.程序效率的提高主要应通过选择高效的算法来实现。
22.为了快速完成集成测试,采用一次性集成方式是适宜的。
在软件开发过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。
23.导致软件缺陷产生的原因与产品说明书无关。
24.在没有产品说明书和需求文档的条件下可以进行动态黑盒测试。
25.软件测试按照测试过程分类为黑盒、白盒测试。
()
26.在设计测试用例时,应包括合理的输入条件和不合理的输入条件。
()
27.集成测试计划在需求分析阶段末提交。
()
28.单元测试属于动态测试。
()
29.缺陷跟踪系统只针对对测试人员来使用。
()
30.从用户软件开发者的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接受该产品。
()
31.软件测试的目的是尽可能多的找出软件的缺陷。
()
32.软件项目在进入需求分析阶段,测试人员应该开始介入其中。
()
33.负载测试是验证要检验的系统的能力最高能达到什么程度。
()
34.测试人员要坚持原则,缺陷未修复完坚决不予通过。
()
35.代码评审员一般由测试员担任。
()
36.测试组负责软件质量。
()
37.测试程序仅仅按预期方式运行就行了。
()
38.测试只能证明软件存在错误而不能证明软件没有错误,测试无法显示潜在的错误和缺陷,继续进一步测试可能还会找到其它错误和缺陷。
()
39.在测试的程序段中,若发现的错误数目多,则残存在其中的错误数目也比较多,因此应当花较多的时间和代价测试那些具有更多错误数目的程序模块。
()
40.软件测试是有组织、有计划、有步骤的活动,要严格按照测试计划进行,要避免测试的随意性。
()
41.在有限的时间和资源下进行完全测试找出软件所有的错误和缺陷是不可能的,软件测试不能无限进行下去,应适时终止。
()
42.软件测试工作是在程序编写之后调试时才开始的。
()
43.、如测试人员没有发现缺陷,就说明软件中不存在缺陷。
()
44.测试的覆盖率不可能做到100%,因此,测试总是存在着风险的。
()
45.错误发现得越迟,往前返工要做的事情就越多,成本就越高。
()
46.在测试工作中期,先完成集成测试后再进行单元测试,这样有利于解决细微的问题。
()
二、选择题
1.软件测试是软件开发的重要环节,进行软件测试的目的是()
A.证明软件错误不存在 B.证明软件错误的存在
C.改正程序所有的错误 D.发现程序所有的错误
2.对于软件质量描述不正确的是:
()
A.高质量的过程产生高质量的产品 B.软件质量是测试人员测试出来的
C.软件质量是设计和规划出来的 D.项目阶段结束意味着产品质量达到了预期的标准
3.对于软件测试描述不正确的是:
()
A.软件测试无法找到程序当中的所有缺陷
B.测试工程师需要在最短时间内完成最有效的测试
C.软件测试工程师只要了解需求就可以了
D.测试工程师也需要了解编码知识
4.检查软件产品是否符合需求定义的过程称为:
()
A.确认测试 B.集成测试 C.性能测试 D.功能测试
5.衡量计算机的平均无故障时间是计算机的______
A.可靠性B.可维护性C.适应性D.稳定性
6.下面哪种方法根据输出对输入的依赖关系设计测试用例。
A.路径测试B.等价类C.因果图D.边界值
7.以下哪种测试与其余三种测试在分类上不同
A.负载测试B.强度测试C.数据库容量测试D.静态代码走查
8.路径测试是整个结构测试的重要组成,但在研究路径测试时,通常又是使用程序控制流图来代替()
A.程序框图 B.结构图 C.数据流图 D.程序流程图
9.软件测试类型按开发阶段划分是()
A.需求测试、单元测试、集成测试、验证测试
B.单元测试、集成测试、确认测试、系统测试、验收测试
C.单元测试、集成测试、验收测试、确认测试、验收测试
D.调试、单元测试、集成测试、用户测试
10.下述说法错误的是()
A.单元测试,是针对软件测试的最小单位—程序模块进行正确性检验的测试工作
B.集成测试也叫做组装测试,通常在编码完成的基础上,将所有的程序模块进行有序的、递增的测试。
C.集成测试是检验程序单元和部件的接口关系,逐步集成为符合概要设计要求的程序部件或整个系统。
D.系统测试是真实或模拟系统运行环境下,检查完整的程序系统能否和相关硬件、外设、网络、系统软件和支持平台等正确配置与连接,并满足用户需求
11.不属于集成测试步骤的是()
A、制定集成计划B、执行集成测试C、记录集成测试结果D、回归测试
12.关于软件性能简述不正确的是()
A.在看代码完成之前,无法进行与性能有关的工作
B.性能是设计和规划出来的,而不是测试出来的
C.性能测试在很多情况下不能发现特定的性能缺陷
13.关于性能测试,描述错误的是()
A.性能测试是对系统的在性能方面的测量工作。
B.响应时间是系统重要的性能指标,原则上可以用秒表手工测试
C.吞吐量是指系统在单位时间内处理事务的能力
14.下列哪些概念不属于性能测试()
A.测量相应时间B.可伸缩性C.吞吐量 D)可维护性
15.独立的测试项目管理通常不包括下面哪些内容()
A.测试需求管理 B.测试目标管理
C.测试工作量管理 D)被测试产品质量
16.正式的技术评审是软件工程师组织的软件质量保证活动,下面关于FTR指导原则中错误的是______
A.评审产品,而不是评审生产者的能力
B.要有严格的评审计划,并遵守日程安排
C.对评审中出现的问题要充分讨论,以求彻底解决
D.限制参与者人数,并要求评审会之前做好准备
17.对每一个阶段(如单元测试、集成测试、系统测试)的测试结果进行分析评估后,应写出()。
A.软件测试计划B.软件测试用例C.软件测试过程D.测试分析报告
18.在软件测试中,下面说法中错误的是( )。
A.测试是为了发现程序中的错误而执行程序的过程
B.测试是为了表明程序是正确的
C.好的测试方案是极可能发现迄今为止尚未发现的错误的方案
D.成功的测试是发现了至今为止尚未发现的错误的测试
19.软件测试用例主要由测试输入数据和( )两部分组成。
A.测试计划 B.测试规则
C.测试的预期结果 D.以往测试记录分析
20.与设计测试用例无关的文档是( )。
A.项目开发计划 B.需求规格说明书
C.软件设计说明书 D.源程序
21.使用白盒测试方法时,确定测试数据应根据( )和指定的覆盖标准。
A.程序的内部结构 B.程序的复杂性
C.使用说明书 D.程序的功能
22.在用逻辑覆盖法设计测试用例时,有语句覆盖、分支覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖和路径覆盖等。
其中( )是最强的覆盖准则。
A.语句覆盖 B.条件覆盖 C.判定-条件覆盖 D.路径覆盖
23.在黑盒测试中,着重检查输入条件的组合的测试用例设计方法是( )。
A.等价类划分 B.边界值分析 C.错误推测法 D.因果图法
24.从下列叙述中,能够与软件开发各阶段,如需求分析、设计、编码相对应的软件测试是( )。
A.组装测试、确认测试、单元测试
B.单元测试、组装测试、确认测试
C.单元测试、确认测试、组装测试
D.确认测试、组装测试、单元测试
25.单元测试将根据在( )阶段中产生的规格说明进行。
A.可行性研究与计划 B.需求分析 C.概要设计 D.详细设计
26.组装测试计划是在( )阶段制定的。
A.可行性研究与计划 B.需求分析 C.概要设计 D.详细设计
27.从已发现故障的存在到找到准确的故障位置并确定故障的性质,这一过程称为( )。
A.错误检测 B.故障排除 C.调试 D.测试
28.等价类划分完成后,就可得出( ),它是确定测试用例的基础。
A.有效等价类 B.无效等价 C.等价类表 D.测试用例集
29.由因果图转换出来的( )是确定测试用例的基础。
A.判定表 B.约束条件表 C.输入状态表 D.输出状态表
30.下面哪个不是测试用例设计基本原则是:
()
A.测试用例能够发现至今没有发现的错误
B.测试用例应由测试输入数据和与之对应的预期输出结果这两部分组成
C.在测试用例设计时,应当包含合理的输入条件和不合理的输入条件
D.测试用例设计应该以功能为线索
31.下面哪项不属于单元测试:
()
A.人工静态检查 B.动态执行跟踪 C.压力测试
32.软件测试的目的是(A)。
为了提高测试的效率,应该(B)。
使用白盒测试方法时,确定测试数据应根据(C)和指定的覆盖标准。
软件的集成测试工作最好由(E)承担,以提高集成测试的效果。
供选择的答案:
A. ①评价软件的质量 ②发现软件的错误
③找出软件中的所有错误 ④证明软件是正确的
B. ①随机地选取测试数据
②取一切可能的输入数据作为测试数据
③在完成编码以后制定软件的测试计划
④选择发现错误的可能性大的数据作为测试数据
C. ①程序的内部逻辑 ②程序的复杂程度
③使用说明书 ④程序的功能
E. ①该软件的设计人员 ②该软件开发组的负责人
③该软件的编程人员 ④不属于该软件开发组的软件设计人员
33.软件测试方法可分为黑盒测试法和白盒测试法两种。
黑盒测试法是通过分析程序的(A)来设计测试用例的方法。
除了测试程序外,它还适用于对(B)阶段的软件文档进行测试。
白盒测试法是根据程序的(C)来设计测试用例的方法。
除了测试程序外,它也适用于对(D)阶段的软件文档进行测试。
白盒法测试程序时常按照给定的覆盖条件选取测试用例。
(E)覆盖比(F)覆盖严格,它使得每一个判定的每一条分支至少经历一次。
(G)覆盖既是判定覆盖,又是条件覆盖,但它并不保证使各种条件都能取到所有可能的值。
(H)覆盖比其他条件都要严格,但它不能保证覆盖程序中的每一条路径。
单元测试一般以(I)为主,测试的依据是(J)。
供选择的答案:
A,C:
①应用范围 ②内部逻辑③功能 ④输入数据
B,D:
①编码 ②软件详细设计 ③软件总体设计④需求分析
E,F,G,H:
①语句 ②判定 ③条件 ④判定/条件
⑤多重条件 ⑥路径
I:
①白盒法 ②黑盒法
J:
①模块功能规格说明 ②系统模块结构图 ③系统需求规格说明
三、简答题
1.软件开发过程模型
2.*软件测试过程中,都要进行哪些测试?
每种测试关注哪些内容?
可以采用哪些方法进行测试?
3.软件测试方法有哪些?
简述其特点。
4.*系统测试包括哪些方面?
并简述每种测试的特点。
5.常见的软件缺陷有哪些?
对每种软件缺陷产生的原因进行分析
6.*软件测试计划中应该包括哪些内容?
(如何制定软件测试计划)
7.软件评审的目的是什么?
都需要进行哪些评审?
如何组织评审。
8.*如果能够执行完美的黑盒测试,还需要进行白盒测试吗?
为什么?
9.试叙述对一个软件项目测试的全过程
10.集成测试的策略有哪些?
各有何特点?
11.分析下面的代码中可能存在哪些软件缺陷?
char*_strdup(constchar*strSource){
inta;
char*str;
str=newchar[10];
strcpy(str,strSource);
returnstr;
}
12.*关于一个印有文字的书包,要对这个书包进行测试。
简述你能想到的测试方法。
(都需要进行哪些测试)
13.软件测试涉及哪些关键问题?
14.为什么说软件测试必须有预期结果?
15.简述黑盒测试和白盒测试概念,并试分析两者的优点和缺点。
16.采用白盒测试法设计测试用例时,常用的逻辑覆盖测试方法有哪几种?
请简单描述各种方法的目的。
17.黑盒测试有哪几种方法?
请简单描述各种方法的特点。
18.简述软件测试与软件开发各阶段的关系。
19.简述软件测试的目的和原则。
20.软件测试管理包括哪些方面?
21.*当WinRunner识别完GUI对象后,会将GUI对象的属性储存在GUIMapFile,WinRunner提供二种GUIMapFile模式:
GUIMapFileperTest模式与GlobalGUIMapFile模式。
(1)请比较这两种GUIMapFile模式的优点和缺点。
(2)请分别说明在这两种GUIMapFile模式下,WinRunner可以通过哪些方式学习被测软件的GUI?
介绍在WinRunner中GUI映射文件(GUIMapFile)的作用。
22.*WinRunner可以帮助用户自动处理从测试开发到测试执行的整个过程,可以创建可修改和可复用的测试脚本,而不用担心软件功能模块的变更。
(1)请简述WinRunner测试过程所包含的六个阶段。
(2)WinRunner可以用录制的方式快速建立自动测试脚本,请问WinRunner提供了哪几种可用的录制模式?
请描述各种录制模式的特点。
四、设计题
1.对如下程序:
voidDo(intX,intA,intB){
if((A<4)&&(B=5))
X=X/A;
if((A=2)||(X>1))
X=X+1;
}
(1)画出程序的控制流图(用题中给出的语句编号表示)。
(2)分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。
2.
对于下面的功能结构图,给出采用自下而上和自上而下进行继承测试的过程
3.*使用等价类划分法为NextDate函数设计测试用例:
NextDate函数包含三个输入变量month、day和year(要求month、day和year均为整数值,并且满足:
1≤month≤12;1≤day≤31;1912≤year≤2050),函数的输出为输入日期后一天的日期。
(1)分析NextDate函数的规格说明,列出输入域等价类表(包括有效和无效等价类)。
(2)根据
(1)中的等价类表,设计能覆盖所有等价类的测试用例,要求包括输入数据和预期输出,并指出各个测试用例所覆盖的等价类编号。
4.用等价类划分法测试为保险公司计算保费费率的程序。
某保险公司的人寿保险的保费计算方式为:
投保额*保险费率,其中的保险费率依点数不同而有别,10点及10点以上保险费率为0.6%,10点以下保险费率为0.1%;而点数又是由投保人的年龄、性别、婚姻状况和抚养人数来决定,具体规则如下:
对程序中各个输入条件的要求如下:
年龄是一位或两位非零整数,值的有效范围为1~99;性别是一位英文字符,有效取值只能为‘M’(表示男性)或’F’(表示女性);婚姻的有效取值只能为‘已婚’或‘未婚’;抚养人数的有效取值可以是空白或一位非零整数(1~9)。
(1)分析程序的规格说明,列出等价类表(包括有效等价类和无效等价类)。
(2)根据
(1)中的等价类表,设计能覆盖所有等价类的测试用例的输入数据和预期输出。
5.某城市电话号码由三部分组成,分别是:
地区码——空白或三位数字;
前缀——非‘0’或‘1’开头的三位数字;
后缀——4位数字。
假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。
(1)分析程序的规格说明,列出输入域等价类表(包括有效和无效等价类)。
(2)根据
(1)中的等价类表,设计能覆盖所有等价类的测试用例,要求包括输入数据和预期输出,并指出各个测试用例所覆盖的等价类编号。
6.*用决策表测试法测试以下程序:
该程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:
1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。
例如,输入为2004年11月29日,则该程序的输出为2000年12月1日。
(1)分析各种输入情况,列出为输入变量month、day、year划分的有效等价类。
(2)分析程序的规格说明,并结合以上等价类划分的情况,给出问题规定的可能采取的操作(即列出所有的动作桩)。
(3)根据
(1)和
(2),画出简化后的决策表。
7.用因果图法测试以下程序。
程序的规格说明要求:
输入的第一个字符必须是#或*,第二个字符必须是一个数字,在此情况下进行文件的修改;如果第一个字符不是#或*,则给出信息N,如果第二个字符不是数字,则给出信息M。
(1)分析程序的规格说明,列出原因和结果。
(2)找出原因与结果间的因果关系、原因与原因间的约束关系,画出因果图。
(3)将因果图转换成决策表。
(4)根据(3)中的决策表,设计测试用例的输入数据和预期输出。
8.为下图设计足够的测试用例,分别实现对其的判定覆盖、条件覆盖和条件组合覆盖。
9.*使用逻辑覆盖测试方法测试以下程序段:
voidDo(intX,intA,intB){
1 if((A>1)&&(B==0))
2 X=X/A;
3 if((A==2)||(X>1))
4 X=X+1;
5 }
说明:
程序段中每行开头的数字(1~5)是对每条语句的编号。
(1)画出程序的控制流图(用题中给出的语句编号表示)。
(2)分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。
10.使用逻辑覆盖测试方法测试以下程序段:
voidDoWork(intx,inty,intz){
1int k=0,j=0;
2if((x>3)&&(z<10))
3{
4k=x*y-1;
5j=sqrt(k);
6}
7if((x==4)||(y>5))
8j=x*y+10;
9j=j%3;
10}
说明:
程序段中每行开头的数字(1~10)是对每条语句的编号。
(1)画出程序的控制流图(用题中给出的语句编号表示)。
(2)分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。
11.以下代码由C语言书写,请按要求作答。
IntIsLeap(intyear)
1{
2if(year%4==0)
3{
4if(year%100==0)
5{
6if(year%400==0)
7leap=1;
8else
9leap=0;
10}
11else
12leap=1;
13}
14else
15leap=0;
16returnleap;
17}
问题:
(1)画出以上代码的控制流图;
(2)计算上述控制流图的圈复杂度V(G)(独立路径数);
(3)假设输入的取值范围是1000 五、综合应用题目 1、在软件开发与运行阶段一般需要完成单元测试、集成测试、确认测试、系统测试和验收测试,这些对软件质量保证起着非常关键的作用。 (1)请简述单元测试的主要任务。 (2)集成测试包括非增量式和增量式两种方法,增量式测试按照不同的实施次序又可以分为自顶向下增量式测试和自底向上增量式测试。 请比较上述两种增量式测试方法的优点和缺点。 (3)公司A承担了公司B的办公自动化系统的建设工作。 2004年10月初,项目正处于开发阶段,预计2005年5月能够完成全部开发工作,但是合同规定2004年10月底进行系统验收。 因此,在2004年10月初,公司A依据合同规定向公司B和监理方提出在2004年10月底进行验收测试的请求,并提出了详细的测试计划和测试方案。 在该方案中指出测试小组由公司A的测试工程师、外聘测试专家、外聘行业专家以及监理方的代表组成。 请问公司A的做法是否正确? 请给出理由。 2、分类总结目前常见的测试工具及其作用和特点。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 练习题 修订版