精品软件测试复习题.docx
- 文档编号:14320766
- 上传时间:2023-06-22
- 格式:DOCX
- 页数:14
- 大小:84.94KB
精品软件测试复习题.docx
《精品软件测试复习题.docx》由会员分享,可在线阅读,更多相关《精品软件测试复习题.docx(14页珍藏版)》请在冰点文库上搜索。
精品软件测试复习题
软件测试复习题
一、名词解释题
软件生命周期:
软件从产生到报废的过程,
1.问题定义及规划2.需求分析3.软件设计4.程序编码5.软件测试6.软件维护
软件测试:
使用人工或者自动手段来运行或测试某个系统的过程。
CMM:
能力成熟度模型,是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。
软件质量:
软件与明确的和隐含的定义的需求相一致的程度。
等价类划分:
分步骤地把无限的测试用例减的很少,但过程同样等效。
V&V:
验证和有效确认,验证系统功能和特性,确认是否满足客户需求。
灰盒测试:
边看代码、边利用代码的信息帮助测试的一种测试方法。
驱动模块(Drive):
用来模拟被测试模块的上一级模块,相当于被测模块的主程序。
QA:
(软件)质量保证,检查和评价当前软件开发的过程,找出改进过程的方法,
以达到防止软件缺陷的出现的目标。
需求:
用户解决问题或达到目标所需的条件或权能,
特别测试:
是一种没有实际计划下执行的测试。
集成测试:
把多模块按照一定的集成方法和策略,逐步组装成子系统,进而组装成整个系统的测试
黑盒测试:
软件测试人员只需知道软件运行的结果而无需知道软件的内部是如何运行的。
回归测试:
回归测试是在软件维护阶段,对软件进行修改之后进行的测试。
评审:
对软件元素或者项目状态的一种评估手段,以确定其是否与计划结果保持一致,并对其改进。
软件缺陷:
计算机系统或者程序中存在的任何一种破坏正常运行能力的问题,错误,或者缺陷。
SQA:
建立一套有计划,有系统的方法,来向管理层保证拟定出的标准、步骤、实践和方法能够正确地被所有项目所采用,通过对软件产品和活动进行评审和审计来验证软件是合乎标准的。
单元测试:
对软件基本组成单元进行的测试,而且软件单元是在于程序的其他部分相隔离的情况下进行独立的测试。
二、判断题
1、在千年虫例子中,Dave有错吗?
有错(√)
2、在没有产品说明书和需求文档的条件下可以进行动态黑盒测试。
(√)
3、如果匆忙开发产品,就可以跳过模块测试而直接进行集成测试。
()
4、测试错误提示信息属于文档测试范围。
(√)
5、软件测试等于程序测试()
6、所有软件都有一个用户界面,因此必须测试易用性。
√
7、软件测试员可以根据产品说明书进行白盒测试。
√
8、在进行压迫测试的同时进行重负测试是不合情理的。
9、公司或者一开发小组用来称呼软件问题的术语很重要。
10、好的测试员坚持不懈地追求完美。
11、测试小组负责质量
12、错误信息提示的测试属于失效性测试
13、兼容性是一种产品特性,可以有不同程度的符合标准。
√
14、并非所有软件缺陷都要修复。
√
15、尚未发现或未观察到的软件缺陷只能说是潜在缺陷。
√
16、软件测试要精度还是准确度很大程度上取决于开发小组的目标。
17、静态测试是指通常意义上的测试——使用和运行软件。
18、有效的动态测试并不需要软件的需求文档或者产品说明书。
19、测试用例是软件测试的核心。
√
20、软件状态是指软件当前所处的条件或者模式。
√
21、软件测试是为了证明程序是正确的,即测试能发现程序中所有的错误
22、静态白盒测试可以找出遗漏之处和问题。
√
23、入侵式工具是最佳类型,因为其操作与测试的软件最贴近。
24、程序测试是证明程序正确地执行了预期的功能√
25、访问程序的所有状态也确保了遍历各种状态之间的转换。
26、要了解他国语言才能测试本地化产品。
()
27、所有软件必须进行某种程度的兼容性测试。
()
28、尽早发现软件缺陷,降低修复成本。
(√)
29、总是首先设计黑盒测试用例。
(√)
30、软件缺陷发现得越晚,非一致性费用越高(√)
三、选择题
1、导致软件缺陷的最大原因来自:
(A)
A、软件产品规格说明书B、软件设计
C、软件编码D、数据输入错误
2、以下关于软件测试目的的描述,不正确的是:
(B)
A、测试以发现故障或缺陷为目的
B、测试可以找出软件中存在的所有缺陷和错误
C、执行有限测试用例并发现错误
D、检查软件是否满足定义的各种需求
3、瀑布模型表达了一种系统的、顺序的软件开发方法。
以下关于瀑布模型的叙述中,正确的是:
D
A、瀑布模型能够非常快速地开发大规模软件项目
B、只有很大的开发团队才使用瀑布模型
C、瀑布模型已不再适合于现今的软件开发环境
D、瀑布模型适用于软件需求确定,开发过程能够采用线性方式完成的项目
4、敏捷模式不仅是一个开发过程,而且是一类过程的统称,以下选项中不属于敏捷软件开发模式的是:
B
A、极限编程XPB、IPD流程
C、迭代式增量开发过程SCRUMD、特征驱动软件开发FDD
5、软件测试工作应该开始于:
A
A、需求分析阶段B、概要设计阶段C、详细设计阶段D、编码之后
6、软件质量的定义是:
D
A、软件的功能性、可靠性、易用性、效率、可维护性、可移植性
B、满足规定用户需求的能力
C、最大限度达到用户满意
D、软件特性的总和,以及满足规定和潜在用户需求的能力
7、以下选项中不属于软件功能性的子特性的是:
B
A、适用性B、稳定性C、准确性D、安全性
8、软件可移植性应从如下A方面进行测试。
A、可适应性、易安装性、共享性、易替换性
B、可适应性、易安装性、可伸缩性、易替换性
C、可适应性、易安装性、兼容性、易替换性
D、可适应性、成熟性、兼容性、易替换性
9、关于软件质量保证和软件测试的描述,不正确的是:
D
A、软件质量保证和软件测试是软件质量工程的两个不同层面的工作
B、在软件质量保证的活动中也有一些测试活动
C、软件测试是保证软件质量的一个重要环节
D、软件测试人员就是软件质量保证人员
10、关于软件测试对软件质量的意义,有以下观点:
①度量与评估软件的质量;②保证软件;③改进软件开发过程;④发现软件错误。
其中正确的是:
C
A、①、②、③B、①、②、④
C、①、③、④D、①、②、③、④
11、软件能力成熟度模型(CMM)将软件能力成熟度自低到高依次划分为5级。
目前,达到CMM第3级(已定义级)是许多组织努力的目标,该级的核心是:
B
A、建立基本的项目管理和实践来跟踪项目费用、进度和功能特性
B、使用标准开发过程(或方法论)构建(或集成)系统
C、管理层寻求更主动地应对系统的开发问题
D、连续地监督和改进标准化的系统开发过程
12、下列选项中,不属于黑盒测试技术的是:
B。
A、等价类划分法B、模块接口C、正交实验法D、状态转换法
13、软件测试是为了检查出并改正尽可能多的错误,不断提高软件的:
(C)
A、功能与效率B、设计和技巧C、质量和可靠性D、质量和效能
14、识别测试的任务、定义测试的目标以及为实现测试目标和任务的测试活动规格说明,上述行为主要发生在:
(B)
A、测试结束活动B、测试分析和设计
C、测试实现和执行D、测试计划和控制
15、软件测试的对象包括:
(B)
A、目标程序和相关文档B、源程序和相关文档
C、目标程序、操作系统和平台软件D、源程序和目标程序
四、填空题
1、软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,它是软件质量保证的关键步骤。
2、在开发软件过程中有各种不同的方法,4种最常用的模式是:
大爆炸模式、边写边改模式、瀑布模式、螺旋模式。
3、按照测试用例依据的信息来分,软件测试可分为:
白盒测试、黒盒测试、灰盒测试、接口测试(随机测试)。
4、调试的目的是修复缺陷。
5、按照软件开发过程软件测试方法可以分为:
单元测试、集成测试、系统测试、验收测试(ą测试)、回归测试
6、软件测试涉及的关键问题包括四个方面:
测试由谁来执行、测试什么、什么时候进行测试、怎样进行测试。
7、质量的费用分为两类:
一致性费用和非一致性费用。
8、产品发行后修复软件缺陷比项目开发早期这样做的费用要高出100倍或更高。
9、单元测试针对每个程序的模块,主要测试5个方面的问题:
模块接口、局部数据结构、边界条件、模块中所有独立执行通路、模块的各条错误处理通路。
10、软件开发大爆炸模式的最大优点是简单。
11、静态测试只是:
检查和审核。
12、软件缺陷的特征是:
固有性,感染性,传染性。
13、软件缺陷发现得越晚,非一致性费用越高,按指数级数激增
14、软件调试和软件测试有完全不同的含义,测试的目的是寻找软件缺陷。
15、软件测试的周期性是:
测试、改错、再测试、再改错这样一个循环过程。
五、简答题(每题4分,共20分)
1、说出软件缺陷可能不修复的几个原因。
进度中没有安排足够的时间,或者不是软件缺陷,或者修复的风险太大不值得修复,以及软件缺陷没有正确的报告。
2、软件测试的目的是什么:
软件测试的目的,第一是确认软件的质量,其一方面是确认软件做了你所期望做的事情,另一方面是确认软件以正确的方式做了这个事情。
第二是提供信息,比如提供给开发人员或程序经理的回馈信息。
为风险评估所准备的信息。
第三软件测试的目的是保证整个软件开发过程是高质量的。
3、为什么通常说产品说明书是软件产品中制造缺陷的最大来源。
产品说明书常常没写——不要忘了,说不出来就做不出来。
其他原因是产品说明书虽然有,但是不完整,不停更改,或者整个开发小组没有很好的沟通。
5、启动Windows计算器程序,输入5,000-5=?
观察结果。
这是软件缺陷吗?
为什么?
答案是0,而不是预期的4995。
其原因是逗号(,)自动被转换为小数点(.)。
要确定这是否为软件缺陷,就需要根据产品说明书进行合法性检查,也许在产品说明书上声明逗号会被转换为小数点。
还要对照用户需求进行验证,看大多数用户是否接受这点还是产生疑惑。
6、软件测试是一个持续的过程,基本测试过程主要包含哪些活动?
单元测试,集成测试,系统测试,回归测试,验收测试
7、软件测试员的目标是什么?
软件测试员的目标是尽可能早一些找出软件缺陷,并确保其得以修复。
8、简述在软件产品中哪些是属于软件缺陷?
.软件未实现软件承诺品说明书要求的功能。
.软件实现了产品说明书指明不应该出现的错误。
.软件实现了软件产品说明书中未提到的功能。
.软件未实现产品说明书虽未提及但是应该实现的目标。
.软件难以理解、不易使用、运行缓慢或者(从测试员的角度看)最终用户会认为不好。
9、为什么不能完全测试程序?
除了极短小的简单程序,完全测试需要太多的输入、输出和分支组合。
此外,软件说明书也许不客观,可以用多种方式解释。
10、描述2-3个你所知道软件缺陷或软件故障的案例。
美国迪斯尼狮子王游戏bug兼容性问题;
美国航空火星系统系统接口
导弹发射系统
11、仅仅测试程序是否按预期方式运行有何问题?
这最多算是测试问题的一般,用户不一定遵循规则,软件测试员需要证实不按操作有何后果。
此外,如果软件进行测试没有打破沙锅问到底的态度就会遗漏某些软件缺陷。
12、既然用户界面没有明确的对与错,怎样测试呢?
软件测试员应该检查其是否符合7个重要的原则:
符合标准规范、直观、抑制、灵活、舒适、正确和实用。
13、试举Windows标准规范的例子。
在windows中,按F1总是显示软件的帮助
在windows中,File菜单总是最左边的菜单选项
在windows中,选择Help菜单中About显示软件的版权、许可证、版本信息
在windows中,Ctrl+C 复制 Ctrl+V剪切 Ctrl+P 粘贴
14、为什么要进行系统测试?
系统测试是我们传统观念的一种测试方式,也就是一般放在项目功能基本实现后的功能和性能等方面的测试,目前软件测试已由开发的后期介入扩展到了整个生命周期,由基于代码运行扩展到静态走读,由传统的发现错误为目的扩展到了对缺陷的预防。
15、简述软件测试的分类
1、按测试方式分类:
静态测试,动态测试。
2、按测试方法分类:
白盒测试,黑盒测试。
3、按测试过程分类:
单元测试集成测试系统测试验收测试。
4、按测试目的分类:
功能测试,健壮性测试,接口测试,性能测试,强度测试,压力测试,用户界面测试安全测试靠性测试安装/反安装测试文档测试恢复测试兼容性测试。
16、简述测试工作流程?
测试组织和管理,测试计划,测试用例设计,测试实施,测试结果分析,测试评审和报告
17、简述白盒测试都有哪些方法?
语句覆盖,条件覆盖,判定覆盖,路径覆盖
六、问答题(每题6分,共30分)
1、假如测试模拟飞行或模拟城市之类的模拟游戏,精确度和准确度哪一个更值得测试?
模拟游戏的目的是使游戏者置身于与现实情形接近的虚构环境中。
在模拟器中的飞行应该是感觉像在真飞机上一样。
城市模拟就应该反映真实城市的各种情形。
软件有了准确性,才能谈到精确。
2、假设有一个文本框要求输入10个字符的邮政编码,对于该文本框应该进行怎样的等价划分?
输入
结果
特殊字符
**********或¥¥¥¥¥¥¥¥¥¥
英文字母
dnoggaodda
大于十个字符
111111111111
小于十个字符
123
数字和其他混合
123ggaodda
空字符
保留字符
3、描述杀虫剂现象,如何找到新人查看软件来解决它?
软件测试越多,其免疫力越强,再用螺旋式模式软件开发过程中,每一圈都要重复测试过程,软件测试员每一个轮回就会接到软件进行测试,经过几个回合之后,最后该发现的软件缺陷都被发现了,在测试下去不会有新发现了,解决方法:
编写不同的新测试程序,对程序不同部分进行测试,找出更多的软件缺陷。
4、简述软件测试的原则。
1所有的测试都应追溯到用户需求
2应当把“尽早和不断地测试”作为座右铭
3测试工作应该由独立的专业的软件测试机构来完成
4Pareto原则,测试发现的错误中80%很可能起源于20%的模块中。
5设计测试用例时,应该考虑各种情况。
6对测试出的错误结果一定要由一个确认的过程。
7制定严格的测试计划
8完全测试是不可能的,测试需要终止。
9注意回归测试的关联性。
10妥善保存一切测试过程文档。
5、在软件工程或软件测试中如何定义软件缺陷?
6、Web网站的测试是一项复杂的任务,如何进行?
1.对网站进行黑盒测试,其中包括对文本,超级链接,图片,表单对象和其他各种简单的功能测试。
2.灰盒测试 3.白盒测试 4.配置和兼容性测试 5.易用性测试
7、简述采用白盒测试方法必须遵循的原则。
① 保证一个模块中所有独立路径至少被测试一次。
② 所有逻辑值均需测试真或假两种情况。
③ 检查程序的内部数据结构,保证其结构的有效性。
④ 在上下边界及可操作范围运行所有循环。
8、V模型是最具有代表意义的软件测试模型,请简单分析V模型的优点和缺点。
优点:
既有底层测试又有高层测试。
底层:
单元测试。
高层:
系统测试。
将开发阶段清楚的表现出来,便于控制开发的过程。
当所有阶段都结束时,软件开发就结束了。
缺点:
容易让人误解为测试是在开发完成之后的一个阶段。
由于它的顺序性,当编码完成之后,正式进入测试时,这时发现的一些bug可能不容易找到其根源,并且代码修改起来很困难。
实际中,由于需求变更较大,导致要重复变更需求、设计、编码、测试。
返工量大。
9、制定和实施测试策略应包含哪些内容?
制定测试策略:
确定测试所需要用到的技术和工具;
制定测试启动、停止、完成标准;
进行风险分析和应对方案;
10、简述软件测试策略描述软件测试活动的总体方法和目标。
软件测试策略:
在一定的软件测试标准、测试规范的指导下,依据测试项目的特定环境约束而规定的软件测试的原则、方式和方法的集合。
软件测试活动的总体方法包括:
① 单元测试:
纯代码的测试,主要测试代码语言的正确性,是否有冗余的代码等等。
② 集成测试:
接口测试,主要代码块之间的接口,看看数据的传输是否有问题。
③ 系统测试:
黑盒测试,不接触代码,只对整个系统做功能的测试和性能的测试。
软件测试的最终目标:
验证产品是否满足客户的要求,并尽可能多的发现产品中隐藏的BUG,确保交给用户的产品满足用户的需求。
11、如何对测试需求进行分解?
确定软件提供的主要任务。
对每个任务,确定完成该任务所要进行的工作。
确定从数据库信息引出的计算结果。
对于对时间有要求的交易,确定所要的时间和条件。
确定会产生重大意外的压力测试,包括内存、硬盘空间、高的交易率。
确定应用需要处理的数据量。
确定需要的软件和硬件配置。
确定其他与应用软件没有直接关系的商业交易。
确定安装过程。
确定没有隐含在功能测试中的用户界面要求。
12、简述选择测试用例的原则。
.对于有输入的所有功能,既要用有效的输入来测试,也要用无效的输入来测试。
.经过菜单调用的所有功能都应该被测试,包括通过一个菜单调用的组合功能。
.设计的测试用例数量能够达到合理测试所需的“最少”,减少测试成本。
.设计的测试用例不仅能够告知有没有错误,而且能够告知某些类型的错误存在或者不存在,提高测试效率。
13、按照软件测试用例的设计方法而论,软件测试可以分为白盒测试和黑盒测试。
(1)、分别描述黑盒测试法与白盒测试法的主要观点。
白盒测试:
一种被广泛使用的逻辑测试技术,也称为结构测试或逻辑驱动测试。
对象基本是源程序,是以程序的内部逻辑为基础的一种测试技术。
黑盒测试:
数据驱动测试,穷举输入测试,只有把所有可能的输入都作为测试数据使用,才能查出程序中所有的错误。
(2)、比较黑盒测试法与白盒测试法的不同之处。
白盒测试:
结构测试,基于代码的测试或基于设计的测试
黑盒测试:
行为测试,功能测试或基于需求的测试,基于系统应该完成的功能进行测试
黑盒测试关注输入,输出,不关注软件内部结构,白盒测试根据内部结构进行测试,针对的是程序代码逻辑。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品软件 测试 复习题
![提示](https://static.bingdoc.com/images/bang_tan.gif)