1、软件测试的对象包括(53)。
①软件代码 ②文档 ③数据
(53)A.①② B.①③ C.②③ D.①②③
【答案】D
【解析】本题考查软件测试的对象。
根据软件的定义,软件包括程序、数据和文档。所以软件测试并不仅仅是程序测试,还应包括相应文档和数据的测试。
2、编写测试计划的目的是(54)。
①测试工作顺利进行 ②使项目参与人员沟通更舒畅 ③使测试工作更加系统化
④软件过程规范化的要求 ⑤控制软件质量
(54)A.②③⑤ B.①②③ C.①②④ D.①②⑤
【答案】B
【解析】本题考查软件测试计划相关知识。
测试计划是描述了要进行的测试活动的范围、方法、资源和进度的文档。编写测试计划的目的主要有:使测试工作顺利进行,使项目参与人员沟通更舒畅,使测试工作更加系统化等。
3、软件测试的目的是(55)。
(55)A.避免软件开发中出现的错误 B.发现软件中出现的错误
C.容忍软件中出现的错误 D.修改软件中出现的错误
【答案】B
【解析】本题考查软件测试的目的。
软件测试的目的是寻找错误,并且尽最大的可能找出最多的错误。
4、以下关于软件测试原则的叙述中,不正确的是(56)。
(56)A.测试用例不仅选用合理的输入数据,还要选择不合理的输入数据
B.应制定测试计划并严格执行,排除随意性
C.对发现错误较多的程序段,应进行更深入的测试
D.程序员应尽量测试自己的程序
【答案】D
【解析】本题考查软件测试的原则。
软件测试应遵循的原则包括:应当把“尽早和不断地测试”作为开发者的座右铭;程序员应该避免检查自己的程序,测试工作应该由独立的专业的软件测试机构来完成;设计测试用例时,应该考虑到合法的输入和不合法的输入,以及各种边界条件;一定要注意测试中的错误集中发生现象,应对错误群集的程序段进行重点测试;对测试错误结果一定要有一个确认的过程;制定严格的测试计划,并把测试时间安排得尽量宽松,不要希望在极短的时间内完成一个高水平的测试;回归测试的关联性一定要引起充分的注意,修改一个错误而引起更多错误出现的现象并不少见;妥善保存一切测试过程文档。
5、以下关于测试时机的叙述中,正确的是(57)。
(57)A.应该尽可能早的进行测试
B.若能推迟暴露软件中的错误,则修复和改正错误所花费的代价就会降低
C.应该在代码编写完成后开始测试
D.需求分析和设计阶段不需要测试人员参与
【答案】A
【解析】本题考查的是软件测试原则。
在传统的瀑布模型中,软件项目主要有用户需求、需求分析、概要设计、详细设计、编码和实现、测试以及运行维护几个阶段组成。因此人们一般认为,软件测试只是软件编码后的一个阶段。但随着软件测试业的发展,人们越来越认识到:软件测试不应只是软件项目的收尾工作,而应该在软件生命周期的每一阶段中都包含测试。软件测试是贯穿于整个软件开发生命周期的过程活动,包括软件测试计划、软件测试需求分析、软件测试用例设计、软件测试执行、软件缺陷管理、软件测试风险管理以及其他的一些软件测试相关的活动等等组成。在软件项目的每个阶段,都需要进行不同目的和不同内容的测试活动,以保证各个阶段工作产品输出的正确性。在项目开发的后期,发现一些软件需求阶段和概要设计阶段的错误和问题,修改这些缺陷导致的成本将是非常髙的。有资料表明:平均而言,如果在需求阶段修正一个错误的代价是1,那么,在设计阶段就是它的3〜6倍,在编程阶段是它的10倍,在内部测试阶段是它的20〜40倍,在外部测试阶段是它的30〜70倍,而到了产品发布出去,这个数字就是40〜1000倍。
6、使用软件测试工具的目的不包括(58)。
(58)A.帮助测试寻找问题 B.协助问题的诊断
C.节省测试时间 D.提髙设计质量
【答案】D
【解析】本题考查软件测试工具的基础知识。
测试工具是采用自动化测试技术辅助人进行测试的,因此使用测试工具有助于寻找问题以及协助问题诊断,同时,由于采用了自动化技术,测试工具也是可以节省测试时间的。但测试工具只能用来辅助测试,对提高设计质量没有帮助。
7、自动化测试工具中,(59)是最难自动化的。
(59)A.测试执行 B.实际输出与预期输出的比较
C.测试用例生成 D.测试录制与回放
【答案】C
【解析】本题考查自动化测试技术的相关知识。
自动化测试技术包括自动测试执行、输出的比较、测试的录制与回放、测试用例自动生成等,其中,测试用例生成是最需要智力和创造力的活动,而这正是自动化工具最不擅长的事情。
8、以下不属于易用性测试的是(60)。
(60)A.功能易用性测试 B.用户界面测试
C.辅助功能测试 D.可靠性测试
【答案】D
【解析】本题考查易用性测试。
易用性测试包括安装测试、功能易用性测试、靠性和易用性无直接联系,因此可靠性测试不属于易用性测试。
9、以下关于黑盒测试的叙述中,不正确的是(61)。
(61)A.不需要了解程序内部的代码及实现
B.容易知道用户会用到哪些功能,会遇到哪些问题
C.基于软件开发文档,所以也能知道软件实现了文档中的哪些功能
D.可以覆盖所有的代码
【答案】D
【解析】本题考查黑盒测试相关知识。
黑盒测试是把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
由于黑盒测试不考虑程序内部结构,所以该方法不会知道代码的覆盖情况。
10、以下不属于黑盒测试方法的是(62)。
(62)A.等价划分类 B.边界值分析 C.错误推测法 D.静态结构分析法
【答案】D
【解析】本题考查黑盒测试相关知识。
黑盒测试方法包括等价类划分方法、边界值分析方法、错误推测方法、因果图方法、判定表驱动分析方法、正交实验设计方法和功能图分析方法等。静态结构分析法属于一种白盒测试方法。
11、以下关于白盒测试的叙述中,不正确的是(63)。
(63)A.白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求
B.逻辑覆盖法是一种常用的白盒测试方法
C.程序中存在很多判定和条件,不可能实现100%的条件覆盖
D.测试基于代码,无法确定设计正确与否
【答案】C
【解析】本题考查白盒测试相关知识。
白盒测试也称结构测试或逻辑驱动测试,在知道产品内部工作过程的情况下,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不考虑它的功能,白盒测试的主要方法有静态结构分析法、逻辑覆盖法、基本路径测试法等。
条件覆盖是一种逻辑覆盖测试法,它的含义是:构造一组测试用例,使得每一判定语句中每个逻辑条件的可能值至少满足一次。程序中条件数目是固定的,因此是可以实现100%条件覆盖的。白盒测试完全基于代码,不了解设计的意图,因此无法确定设计的正确与否。
12、数据库测试的对象包括(64)。
①数据库连接测试 ②数据库的安全测试
③定义的存储过程和触发器的测试 ④数据库接口测试
(64)A.①④ B.①②③ C.①②④ D.①②③④
【答案】D
【解析】本题考查数据库测试相关知识。
数据库测试一般包括数据库连接测试、数据库的健壮性,容错性和恢复能力测试、 数据库的安全测试、数据库的性能测试、数据库的容量测试、数据库对象的测试(包括定义的存储过程,视图,触发器,约束,规则等等)、数据库接口测试。
13、对于逻辑表达式((a&b)||c),需要(65)个测试用例才能完成条件组合覆盖。
(65)A.2 B.3 C.4 D.5
【答案】C
【解析】本题考查白盒测试中逻辑覆盖法的条件组合覆盖。
条件组合覆盖的含义是:选择足够的测试用例,使得每个判定中条件的各种可能组合都至少出现一次。
本题中有a&b和c两个条件,组合之后需要的用例数是4。
14、为预测某Web系统可支持的最大在线用户数,应进行(66)。
(66)A.负载测试 B.压力测试 C.疲劳强度测试 D.大数据量测试
【答案】B
【解析】本题考查负载测试、压力测试、疲劳强度测试、大数据量测试的基本知识。
负载测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的情况。压力测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,并以此来获得系统能提供的最大服务级别的测试。疲劳强度测试是采用系统稳定运行情况下能够支持的最大并发用户数,或者日常运行用户数,持续执行一段时间业务,保证达到系统疲劳强度需求的业务量,通过综合分析交易执行指标和资源监控指标,来确定系统处理最大工作量强度性能的过程。大数据量测试包括独立的数据量测试和综合数据量测试,独立数据量测试是指针对系统存储、传输、统计、查询等业务进行的大数据量测试;综合数据量测试是指和压力测试、负载测试、疲劳强度测试相结合的综合测试。
本题的目标是预测系统可支持的最大在线用户数,与之相关的只有负载测试和压力测试,而负载测试的前提是需要满足性能指标,所以这里需要的是压力测试,以此来获得系统能提供的最大服务级别。
15、客户端交易处理性能指标是一类重要的负载压力测试指标,以下不属于客户端交易处理性能指标的是(67)。
(67)A.并发用户数 B.平均事务响应时间 C.每秒事务数 D.每秒进程切换数
【答案】D
【解析】本题考查负载压力测试的性能指标。
负载压力测试的性能指标包括客户端交易处理性能指标、服务器资源监控指标、数据库资源监控指标、Web服务器监控指标以及中间件监控指标。其中,客户端交易处理性能指标包括并发用户数、交易处理指标、Web请求指标和Web页面组件指标。
平均事务响应时间和每秒事务数都是交易处理指标,而每秒进程切换数是属于服务器资源监控指标。
16、以下不属于集成测试的是(68)。
(68)A.各个子功能组合起来,能否达到预期要求
B.一个模块的功能是否会对另一个模块的功能产生不利的影响
C.全局数据结构是否有问题
D.函数内局部变量的值是否为预期值
【答案】D
【解析】本题考査集成测试的基础知识。
集成测试的内容包括:在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失;各个子功能组合起来,能否达到预期要求的父功能;一个模块的功能是否会对另一个模块的功能产生不利的影响;全局数据结构是否有问题;单个模块的误差积累起来,是否会放大,从而达到不可接受的程度。
查看函数内局部变量的值是否为预期值是属于单元测试的范畴。
17、逻辑覆盖法不包括(69)。
(69)A.分支覆盖 B.语句覆盖 C.需求覆盖 D.修正条件判定覆盖
【答案】C
【解析】本题考查白盒测试的逻辑覆盖测试法的基础知识。
逻辑覆盖法是白盒测试方法的一种,而白盒测试是不考虑需求的。
18、以下属于安全测试方法的是(70)。
①安全功能验证 ②安全漏洞扫描 ③模拟攻击实验 ④数据侦听
(70)A.①③ B.①②③ C.①②④ D.①②③④
【答案】D
【解析】本题考查安全测试的基础知识。
略