1、软件测试的对象不包括(51)。
(51)A.软件代码 B.软件需求规格说明书
C.软件测试报告 D.软件开发人员
【答案】D
【解析】本题考査软件测试的对象。
根据软件的定义,软件包括程序、数据和文档,所以软件测试的对象也应该为程序、数据、文档。软件开发人员不属于上述三者之一,不是软件测试的对象。
2、以下测试内容中,属于系统测试的是(52)。
①单元测试 ②集成测试 ③安全性测试
④可靠性测试 ⑤兼容性测试 ⑥可用性测试
(52)A.①②③④⑤⑥ B.②③④⑤⑥ C.③④⑤⑥ D.④⑤⑥
【答案】C
【解析】本题考查系统测试的概念。
系统测试是为验证和确认系统是否达到其原始目标,而对集成的硬件和软件系统进行的测试。系统测试是在真实或模拟系统运行的环境下,检查完整的程序系统能否和系统(包括硬件、外设、网络和系统软件、支持平台等)正确配置、连接,并满足用户需求.
常见的系统测试主要有以下内容:
(1)恢复测试。监测系统的容错能力
(2)安全性测试。检测系统的安全机制、保密措施是否完善,主要是为了检验系统的防范能力
(3)压力测试。也称为强度测试,是对系统在异常情况下的承受能力的测试,是检查系统在极限状态下运行时,性能下降的幅度是否在允许的范围内
(4)性能测试。检查系统是否满足系统设计方案说明书对性能的要求
(5)可靠性、可用性和可维护性测试
(6)安装测试
3、以下关于软件测试原则的叙述中,不正确的是(53)。
(53)A.测试贯穿于全部软件生命周期,并不是实现完成后才开始
B.测试用例本身不需要测试
C.测试用例需要逐步完善、不断修订
D.当缺陷成群集中出现时,测试时应该更多关注这些缺陷群
【答案】B
【解析】本题考查软件测试的原则。
软件测试应遵循的原则包括:测试贯穿于全部软件生命周期;应当把“尽早和不断地测试”作为开发者的座右铭;程序员应该避免检查自己的程序,测试工作应该由独立的专业的软件测试机构来完成;设计测试用例时,应该考虑到合法的输入和不合法的输入,以及各种边界条件;测试用例本身也应该经过测试;设计好测试用例后还需要逐步完善和修订:一定要注意测试中的错误集中发生现象,应对错误群集的程序段进行重点测试;对测试错误结果一定要有一个确认的过程;制定严格的测试计划,并把测试时间安排得尽量宽松,不要希望在极短的时间内完成一个高水平的测试;回归测试的关联性一定要引起充分的注意,修改一个错误而引起更多错误出现的现象并不少见;妥善保存一切测试过程文档;穷举测试是不能实现的。
根据上述描述,测试用例也是需要经过测试的。因此应选择选项B。
4、以下关于测试工作在软件开发各阶段作用的叙述中,不正确的是(54)。
(54)A.在需求分析阶段确定测试的需求分析
B.在概要设计和详细设计阶段制定集成测试计划和单元测试计划
C.在程序编写阶段制定系统测试计划
D.在测试阶段实施测试并提交测试报告
【答案】C
【解析】本题考查软件测试和软件开发的关系。
软件测试和软件开发的关系为:项目规划阶段,负责从单元测试到系统测试的整个测试阶段的规划:需求分析阶段,确定测试需求分析、系统测试计划的制定,评审后成为管理项目;详细设计和概要设计阶段,确保集成测试计划和单元测试计划完成;编码阶段,由开发人员进行自己负责部分的测试代码,当项目较大时,由专人进行编码阶段的测试任务;测试阶段(单元、集成、系统测试),依据测试代码进行测试,并提交相应的测试状态报告和测试结束报告。
根据上述描述,系统测试计划是在需求分析阶段完成的。本题中选项C不正确。
5、在引入自动化测试工具以前,手工测试遇到的问题包括(55)。
①工作量和时间耗费过于庞大 ②衡量软件测试工作进展困难
③长时间运行的可靠性测试问题 ④对并发用户进行模拟的问题
⑤确定系统的性能瓶颈问题 ⑥软件测试过程的管理问题
(55)A.①②③④⑤⑥ B.①②③④⑤ C.①②③④ D.①②③
【答案】A
【解析】本题考查在引入自动化测试之前手工测试的缺点。
手工测试全部依靠人手工完成,因此工作量大且耗时,难以衡量测试工作的进展。手工测试无法模拟软件的长时间运行和大量并发用户的访问,因此难以胜任可靠性测试和性能测试。当测试规模较大时,纯人工的测试过程的管理也会面临困难。
6、在进行可用性测试时关注的问题应包括(56)。
①安装过程是否困难 ②错误提示是否明确 ③GUI接口是否标准
④登录是否方便 ⑤帮助文本是否上下文敏感
(56)A.①② B.①②③ C.①②③④ D.①②③④⑤
【答案】D
【解析】本题考查可用性测试的基础知识。
可用性测试一般是在一定环境条件下(可用性实验室),让用户执行测试,观察用户的反映,找到系统的缺陷和需要改进的地方
可用性测试可以从下面几个方面考虑
能否成功的完成一个任务
对于普通用户,完成典型任务需要多长时间
完成典型任务需要访问的的页面数
系统是否提供了层次结构明确、表达清楚的导航功能
对整个系统的感觉如何(形式)
信息是否正确、精确(内容)
帮助系统是否准确并且容易使用
系统是否提供搜索、网站地图等功能
页面下载时间用户能否接受
根据上述描述,题目中这5项都属于可用性测试关注的问题,应选择选项D。
7、以下叙述中,不正确的是(57)。
(57)A.黑盒测试可以检测软件行为、性能等特性是否满足要求
B.黑盒测试可以检测软件是否有人机交互上的错误
C.黑盒测试依赖于软件内部的具体实现,如果实现发生了变化,则需要重新设计用例
D.黑盒测试用例设计可以和软件实现同步进行
【答案】C
【解析】本题考查黑盒测试的基础知识。
黑盒测试是把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。黑盒测试能发现功能错误或者遗漏、输入输出错误以及初始化和终止错误。
由于黑盒测试不考虑程序内部结构,其用例设计可以和软件实现同步,且该方法不依赖于软件内部的具体实现,当实现变化后,只要对外接口不变,则无需重新设计用例。
8、以下关于等价类划分法的叙述中,不正确的是(58)。
(58)A.如果规定输入值a的范围为1~99,那么得到两个等价类,即有效等价类 {a|1<=a<=99|,无效等价类{a|a<1或者a>99}
B.如果规定输入值s的第一个字符必须为数字,那么得到两个等价类,即 有效等价类{s|s的第一个字符是数字},无效等价类{s|s的第一个字符不是数字}
C.如果规定输入值x取值为1,2,3三个数之一,那么得到4个等价类, 即有效等价类{x|x=l)、{x|x=2}、{x|x=3},无效等价类(x|x≠l,2,3}
D.如果规定输入值i为奇数,那么得到两个等价类,即有效等价类{i|i是奇数}无效等价类{i|i不是奇数}
【答案】A
【解析】本题考查黑盒测试方法中的等价类划分法。
在等价类划分法中,如果规定了输入数据取值范围或值的个数的情况下,可以确定一个有效等价类和两个无效等价类;如果规定了一组输入数据(假设包括n个输入值),并且程序要对每一个输入值分别进行处理的情况下,可确定n个有效等价类(每个值确定一个有效等价类)和一个无效等价类(所有不允许的输入值的集合);如果输入条件规定了输入值的集合或规定了 “必须如何”的条件下,可以确定一个有效等价类和一个无效等价类(该集合有效值之外);如果规定了输入数据必须遵守的规则或限制条件的情况下,可确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。
本题中,选项A属于规定了输入数据的取值范围,因此应该得到一个有效等价类 {a|1<=a<=99|和两个无效等价类{a|a<1}、{a|>99}。
9、以下几种白盒覆盖测试中,覆盖准则最强的是(59)。
(59)A.语句覆盖 B.判定覆盖 C.条件覆盖 D.条件组合覆盖
【答案】D
【解析】本题考查白盒测试的逻辑覆盖法。
根据逻辑覆盖法定义,语句覆盖针对的是语句,是最弱的覆盖准则;判定覆盖和条件覆盖分别针对的是判定和条件,强度次之;判定条件覆盖要同时考虑判定和判定中的条件,满足判定条件覆盖同时满足了判定覆盖和条件覆盖;条件组合覆盖则要考虑同一判定中各条件之间的组合关系,是最强的覆盖准则。
根据上述描述,覆盖准则最强的是条件组合覆盖,应选择选项D。
10、对于逻辑表达式((a||b)||(c&&d)),需要(60)个测试用例才能完成条件组合覆盖。
(60)A.2 B.4 C.8 D.16
【答案】D
【解析】本题考查白盒测试中逻辑覆盖法的条件组合覆盖。
条件组合覆盖的含义是:选择足够的测试用例,使得每个判定中条件的各种可能组合都至少出现一次。
本题中有4个条件,组合之后需要的用例数是16,因此选项D正确。
11、为检测系统所能承受的数据容量,应进行(61)。
(61)A.负载测试 B.压力测试 C.大数据量测试 D.疲劳强度测试
【答案】C
【解析】本题考查负载测试、压力测试、疲劳强度测试、大数据量测试的基本知识。
负载测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的情况。
压力测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,并以此来获得系统能提供的最大服务级别的测试。
大数据量测试包括独立的数据量测试和综合数据量测试两类。
独立的数据量测试指针对某些系统存储、传输、统计、查询等业务进行的大数据量测试。
综合数据量测试指和压力性能测试、负载性能测试、疲劳性能测试相结合的综合测试
疲劳强度测试是采用系统稳定运行情况下能够支持的最大并发用户数,或者日常运行用户数,持续执行一段时间业务,保证达到系统疲劳强度需求的业务量,通过综合分析交易执行指标和资源监控指标,来确定系统处理最大工作量强度性能的过程。
大数据量测试包括独立的数据量测试和综合数据量测试,独立数据量测试是指针对系统存储、传输、统计、查询等业务进行的大数据量测试;综合数据量测试是指和压力测试、负载测试、疲劳强度测试相结合的综合测试。
本题的目标是检测系统存储的数据容量,应进行的是大数据量测试中的独立数据量测试,因此选项C正确。
12、压力测试不会使用到以下哪种测试手段,(62)。
(62)A.重复 B.注入错误 C.增加量级 D.并发
【答案】B
【解析】本题考查压力测试的基础知识。
压力测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,并以此来获得系统能提供的最大服务级别的测试。重复、增加量级、并发都属于给系统增加压力的手段,而注入错误并不能增加系统压力。
本题中选项A、C、D都是压力测试的方法,选项B,注入错误一般属于安全性和可靠性测试使用的方法
13、以下测试内容中,不属于GUI测试的是(63)。
(63)A.窗口相关操作是否符合标准 B.菜单和鼠标操作是否正确
C.计算结果是否正确 D.数据显示是否正常
【答案】C
【解析】本题考查GUI测试的基本概念。
GUI (图形用户界面)测试关注的是人和机器的交互,窗口操作、菜单操作、鼠标操作、数据显示都属于交互的范畴,因此属于GUI测试的内容。
14、以下属于动态测试方法的是(64)。
(64)A.代码审查 B.静态结构测试 C.路径覆盖 D.技术评审
【答案】C
【解析】本题考查动态测试的基本概念。
根据定义,动态测试是指需要实际运行被测软件而进行的测试。
根据上述描述,代码审查、静态结构测试和技术评审都不需要运行被测软件,只有路径覆盖需要通过实际执行来确定程序的运行路径。因此应选择选项C。
15、集成测试关注的问题不包括(65)。
(65)A.模块间的数据传递是否正确
B.一个模块的功能是否会对另一个模块的功能产生影响
C.所有模块组合起来的性能是否能满足要求
D.函数内局部数据结构是否有问题,会不会被异常修改
【答案】D
【解析】本题考查集成测试的基础知识。
集成测试是在单元测试的基础上,测试在将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求的活动,因此集成测试关注的主要是各个单元(模块)之间交互的问题,包括模块间数据传递是否正确,一个模块功能是否会影响另一个模块的功能,模块组合起来性能能否满足要求等。
函数内部数据结构是否正确厲于单元测试的范畴。
组装时需要考虑的问题:
(1)在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失
(2)一个模块的功能是否会对另一个模块的功能产生不利的影响
(3)各个子功能组合起来,能否达到预期要求的父功能
(4)全局数据结构是否有问题
(5)单个模块的误差累积起来,是否会放大,以致达到不能接受的程度
局部数据结构测试是属于单元测的范畴,应选择选项D。
16、以下属于影响软件可靠性因素的是(66)。
①软件运行剖面 ②软件规模 ③软件内部结构
④软件的开发方法和开发环境 ⑤软件的可靠性投入
(66)A.①② B.①②③ C.①②③④ D.①②③④⑤
【答案】D
【解析】本题考査软件可靠性的基本概念。
软件可靠性是软件产品在规定的条件下和规定的时间区间完成规定功能的能力。软件运行剖面越多,软件规模越大,内部结构越复杂,则表明软件出错的可能性就越大,可靠性就会越低;软件的开发方法和开发环境不合适或者落后,开发出来的软件就会遗留较多问题,会影响软件可靠性;软件可靠性投入不够,比如可靠性测试不够,也会影响到软件可靠性。
根据上述描述,题目中这5项都会对软件可靠性产生影响。应选择选项D。
17、软件可靠性管理把软件可靠性活动贯穿于软件开发的全过程,成为软件工程管理的一部分.确定软件的可靠性目标在(67)阶段。
(67)A.需求分析 B.概要设计 C.详细设计 D.软件测试
【答案】A
【解析】本题考查软件可靠性的可靠性管理。
对于软件可靠性度量活动的确定是概要设计阶段的工作。
18、以下测试方法中,不属于典型安全性测试的是(70)。
(70)A.安全功能验证 B.漏洞扫描 C.通信加密 D.模拟攻击试验
【答案】C
【解析】本题考査包过安全性测试的基础方法。
软件系统的安全性是信息安全的重要组成部分,因此安全性测试是软件测试的重要内容之一。典型的安全测试方法包括安全性功能验证、漏洞扫描、模拟攻击试验以及网络侦听等。而通信加密是典型的安全防护手段,并不属于安全性测试的方法。