2014软件测试复习题(含答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学号: 姓名: 座位号: 班级: 第一考官:姚庚梅 开课系部:
装 订 线 内 请 不 要 答 题
一、判断题:
1、 软件测试的惟一目的就是为了发现软件的错误。 ( 错 )
2、 在进行黑盒测试时,主要的测试依据是软件需求。( 对 )
3、 功能测试的主要目的是测试软件防止非法入侵能力。( 错 )
4、 软件测试人员可以对概要设计说明书进行白盒测试。( 错 )
5、 验收测试只由开发公司的测试人员来实施的。( 错 )
6、 自动化测试工具可以部分代替手工测试。 ( 对 )
7、 软件错误是指软件产品中存在的导致期望的运行结果和实际运行结果间出现差异的一系列
问题。( 对 )
8、 负载测试的目的是为了测试软件系统的最大负载。( 错 ) 9、 软件测试必须等到所有缺陷均修复才能结束。 ( 错 ) 10、 软件测试人员必须对需求规格说明书进行白盒测试。( 错 ) 11、 项目编码前,软件测试人员不需要介入项目测试。( 错 ) 12、 从是否关注软件内部结构与算法,可以将软件测试分为静态测试和动态测试。( 错 ) 13、
软件测试人员一旦发现软件缺陷,主要以口头方式通知软件开发人员。( 错 )
14、 性能测试的目的是保证软件的功能符合软件需求。( 错 ) 15、 发现错误多的模块,残留在模块中的错误也多。( 对 )
16、 软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作。( 错 )
17、 软件测试只能发现错误,但不能保证测试后的软件没有错误。( 对 ) 18、 测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误。( 错 )
二、单选题:
1、 软件测试的目的( B )
A 、发现程序中的所有错误
B 、尽可能多地发现程序中的错误
C 、证明程序是正确的
D 、调试程序
2、 一个程序中所含有的路径数与 ( A )有着直接的关系 A 、程序的复杂程度 B 、程序语句行数
C 、程序模块数
D 、程序指令执行时间
3、 用户界面测试要遵循一些原则,下面哪一个是需要遵循的原则( A ) A 、易用性原则 B 、完整性原则 C 、创新性原则 D 、复杂性原则
4、 功能测试的目的是( B )
A 、保证用户方便使用
B 、保证软件的功能符合软件需求
C 、保证系统没有错误
D 、保证软件的性能符合设计的要求
5、 软件错误产生的原因有多种多样,以下哪个不属于其中 ( B ) A 、需求分析不完善 B 、没有测试计划
C 、软件设计错误
D 、程序员编码过程中引入错误
6、在软件测试V 模型中,概要设计对应的测试是(C ) A 系统测试 B 单元测试 C 集成测试 D 模块测试
7、在软件生命周期的哪一个阶段,软件缺陷修复费用最低(A ) A 需求分析 B 设计 C 编码 D 产品发布
8、单元测试中用来模拟被测模块调用者模块是(C ) A 父模块 B 子模块 C 驱动模块 D 桩模块
9、不属于单元测试的内容是(D )
A 模块接口测试
B 局部数据结构测试
C 路径测试
D 用户界面测试
10、下列项目中不属于测试文档的是(C )
A 测试计划
B 测试用例
C 程序流程图
D 测试报告
11、在自底向上测试中,要编写称为(B )的模块来测验正在测试的模块 A 测试存根 B 测试驱动模块 C 桩模块 D 底层模块
12、软件测试方法中的( D )属于静态测试方法 A 黑盒法 B 路径覆盖 C 错误推测 D 人工检测
13、软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试(D ) A 结构合理性 B 软件外部功能 C 程序正确性 D 程序内部逻辑
三、问答题:
名词解释:软件测试、测试用例、软件缺陷、自动化测试、黑盒测试、白盒测试、功能测试、性能测试、压力测试、单元测试、集成测试、系统测试、回归测试
1、 什么是测试需求?怎么确定测试需求?
装
订
线
内
请
不
要
答
题
答:测试需求就是在项目中要测试什么描述了测试系统的行为、特性或属性是在测试过程中对测试的约束可以通过以下途径确定测试需求:
(1) 收集与待测软件相关的各种文档资料。如软件需求规格、Use case 、界面设计、项目
会议或与客户沟通时有关于需求信息的会议记录、其他技术文档等。 (2) 与客户或系统分析员的沟通。
(3) 分析业务背景资料。如待测软件业务领域的知识等。 (4) 参与正式与非正式的培训。 (5) 旧系统的原有功能跟特性。
2、 什么是驱动模块和桩模块?为下面的函数构造一个驱动模块、并至少设计3条测试用例。 Float divide(int a,int b)
{Float c;
if(b==0) {
printf(“除数不能为0!”); return 0; }
c=(float)a/b; return c;} 驱动模块:
Viod main() {
Int a,b; Float c;
Scanf(“%d,%d ”,&a,&b); C = divide(a,b);
Printf(“%f ”,c); }
3、什么叫做白盒测试?白盒测试方法主要有哪些?请分别说明。
白盒测试是通过对程序内部结构的分析、检测来寻找问题。 主要方法:
(1)代码检查法(2)静态结构分析法(3)静态质量试题法
(4)逻辑覆盖法(语句覆盖,判定覆盖,条件覆盖,多条件覆盖)
(5)基本路径测试法
4、软件测试人才需要具备哪些素质能力?
1、很强的责任心
2、良好的沟通能力
3、团队合作精神
4、耐心、细心、信心
5、时时保持怀疑态度,并且有缺陷防护意识
6、具备一定的编程经验
5、为什么不能彻底测试一个软件?为什么在不同发现错误的阶段,费用有很大的不同?
答:一个软件的所有输入可能非常大,在有限的时间里不可能对所有的情况进行枚举测试。在不同的阶段发现缺陷,修复费用不同的。越晚发现修复费用越高。这是由于在后期发现缺陷要修改软件的相关联模块越多甚至软件的体系结构要重新设计,这将导致费用急剧增加。
6、怎么设计测试用例?如何评估测试用例的好坏?
测试用例的信息有很多,可以根据实际的情况进行增删,一般来说一个优秀的测试用例应该包含以下信息: 1、产品相关信息
(1)软件产品或项目的名称 (2)软件产品或项目的版本 (3)功能模块名 (4)功能描述