【软件工程题库】第六章 编码和测试

简介: 【软件工程题库】第六章 编码和测试

一. 单选题

1.(单选题)软件测试的目的是( )

A. 评价软件的质量

B. 发现软件的错误

C. 找出软件中的所有的错误

D. 证明软件是正确的

正确答案: B:发现软件的错误;

2.(单选题)测试的关键问题是( )。

A. 如何组织软件评审

B. 如何选择测试用例

C. 如何验证程序的正确性

D. 如何采用综合策略

正确答案: B:如何选择测试用例;

3.(单选题)软件测试用例主要由输入数据和( )两部分组成。

A. 测试计划

B. 测试规则

C. 预期输出结果

D. 以往测试记录分析

正确答案: C:预期输出结果;

4.(单选题)下列几种逻辑覆盖标准中,查错能力最强的是( )。

A. 语句覆盖

B. 判定覆盖

C. 条件覆盖

D. 条件组合覆盖

正确答案: D:条件组合覆盖;

5.(单选题)成功的测试用例是指运行测试用例后( )。

A. 未发现程序错误

B. 发现了程序错误

C. 证明程序正确

D. 改正了程序错误

正确答案: B:发现了程序错误;

6.(单选题)在黑盒测试中,着重检查输入条件组合的方法是( )。

A. 等价类划分法

B. 边界值分析法

C. 错误推测法

D. 因果图法

正确答案: D:因果图法;

7.(单选题)单元测试主要针对模块的几个基本特征进行测试,该阶段不能完成的测试是( )。

A. 系统功能

B. 局部数据结构

C. 重要的执行路径

D. 错误处理

正确答案: A:系统功能;

8.(单选题)软件测试过程中集成测试主要是为了发现( )阶段的错误。

A. 需求分析

B. 概要设计

C. 详细设计

D. 编码

正确答案: B:概要设计;

9.(单选题)为了提高软件测试的效率,应该( )。

A. 随机地选取测试数据

B. 取一切可能的输入数据作为测试数据

C. 在完成编码以后制定软件的测试计划

D. 选择发现错误可能性较大的数据作为测试用例

正确答案: D:选择发现错误可能性较大的数据作为测试用例;

10.(单选题)不属于白盒测试的技术是( )。

A. 路径覆盖

B. 判定覆盖

C. 条件覆盖

D. 边界值分析

正确答案: D:边界值分析;

11.(单选题)黑盒测试时根据程序的( )来设计测试用例的。

A. 应用范围

B. 内部逻辑

C. 功能

D. 输入数据

正确答案: C:功能;

12.(单选题)集成测试时,能较早发现高层模块接口错误的测试方法为( )。

A. 自顶向下渐增式测试

B. 自底向上渐增式测试

C. 非渐增式测试

D. 系统测试

正确答案: A:自顶向下渐增式测试;

13.(单选题)黑盒测试是从( )观点的测试,白盒测试是从( )观点的测试。

A. 开发人员、管理人员

B. 用户、管理人员

C. 用户、开发人员

D. 开发人员、用户

正确答案: C:用户、开发人员;

14.(单选题)在软件测试中,逻辑覆盖标准主要用于( )。

A. 黑盒测试方法

B. 白盒测试方法

C. 灰盒测试方法

D. 软件验收方法

正确答案: B:白盒测试方法;

15.(单选题)等价类划分法的关键是( )。

A. 确定等价类的边界条件

B. 按照用例来确定等价类

C. 划分等价类

D. 确定系统中相同和不同的部分

正确答案: C:划分等价类;

16.(单选题)软件的开发和维护划分为几个阶段,其中单元测试是在( )阶段完成的。

A. 可行性分析

B. 需求分析

C. 编码阶段

D. 详细设计

正确答案: C:编码阶段;

17.(单选题)软件测试可能发现软件中的(    ),但不能证明软件( )。

A. 所有错误、没有错误

B. 错误、没有错误

C. 逻辑错误、没有错误

D. 设计错误、没有错误

正确答案: B:错误、没有错误;

18.(单选题)软件测试是为了检查出并改正尽可能多的错误,不断提高软件的(   )。

A. 功能和效率

B. 设计和技巧

C. 质量和可靠性

D. 质量和效能

正确答案: C:质量和可靠性;

19.(单选题)软件测试是软件开发过程中重要和不可缺少的阶段,其包含的内容和步骤甚多,而测试过程的多种环节中基础的是( )。

A. 集成测试

B. 单元测试

C. 系统测试

D. 验收测试

正确答案: B:单元测试;

20.(单选题)在测试中,下列说法错误的是( )。

A. 测试是为了发现程序中的错误而执行程序的过程

B. 测试是为了表明程序是正确的

C. 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案

D. 成功的测试是发现了迄今为止尚未发现的错误的方案

正确答案: B:测试是为了表明程序是正确的;

21.(单选题)对软件是否能够达到用户所期望的要求的测试称为( )。

A. 集成测试

B. 单元测试

C. 系统测试

D. 验收测试

正确答案: D:验收测试;

22.(单选题)从下列叙述中选出能够与软件开发需求分析、设计、编码相对应的软件测试( )。

A. 组装测试、确认测试、单元测试

B. 单元测试、组装测试、确认测试

C. 单元测试、确认测试、组装测试

D. 确认测试、组装测试、单元测试

正确答案: D:确认测试、组装测试、单元测试;

23.(单选题)在进行软件测试时,首先应当进行( ),然后再进行集成测试,最后再进行有效性测试。

A. 组装测试

B. 单元测试

C. 确认测试

D. 验收测试

正确答案: B:单元测试;

24.(单选题)验收测试的任务是验证软件的( )。

A. 完整性

B. 正确性

C. 有效性

D. 移植性

正确答案: C:有效性;

25.(单选题)软件测试过程中的集成测试主要是为了发现( )阶段的错误。

A. 需求分析

B. 概要设计

C. 详细设计

D. 编码

正确答案: B:概要设计;

26.(单选题)下列几种逻辑覆盖标准中,查错能力最强的是( )。

A. 语句覆盖

B. 条件覆盖

C. 判定覆盖

D. 条件组合覆盖

正确答案: D:条件组合覆盖;

27.(单选题)以下测试说法错误的是( )。

A. 自底向上测试的优点是随着上移,驱动模块逐步减少,测试开销小一些

B. 自底向上测试的优点是比较容易设计测试用例

C. 自顶向下测试的优点是较早地发现高层模块接口、控制等方面的问题

D. 自顶向下测试的优点是使低层模块的错误能较早发现

正确答案: D:自顶向下测试的优点是使低层模块的错误能较早发现;

28.(单选题)白盒测试法又包括逻辑覆盖,主要用于( )。

A. 确认测试

B. 系统测试

C. α测试

D. 单元测试

正确答案: D:单元测试;

29.(单选题)根据下面的源代码控制流图,为了达到语句覆盖率为100%,最少需要设计( )测试用例。

A. 1个

B. 2个

C. 3个

D. 4个

正确答案: A:1个;

30.(单选题)测试ATM取款功能,已知取款数只能输入正整数,每次取款数要求是100的倍数且不能大于500,下面( )是正确的无效等价类。

A. (0,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞)

B. (500,+∞)

C. (500,+∞)、任意大于0小于500的非100倍数的整数

D. (-∞,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞)

正确答案: C:(500,+∞)、任意大于0小于500的非100倍数的整数;

31.(单选题)以下说法正确的是( )。

A. 单元测试涉及编码和详细设计的文档

B. 集成测试涉及其他系统元素

C. 确认测试涉及编码的需求规格说明书

D. 系统测试涉及概要设计信息

正确答案: A:单元测试涉及编码和详细设计的文档;

二. 多选题

1.(多选题)以下对逻辑覆盖说法正确的是( )。

A. 判定覆盖包含了语句覆盖,但它可能会使一些条件得不到测试

B. 条件覆盖的检错能力较判定覆盖强,但有时达不到判定覆盖的要求

C. 凡满足条件组合覆盖标准的测试用例,也必然满足其他所有覆盖种类的覆盖标准

D. 路径覆盖可能使测试用例达不到条件组合覆盖的要求。

正确答案: ABD:判定覆盖包含了语句覆盖,但它可能会使一些条件得不到测试 ; 条件覆盖的检错能力较判定覆盖强,但有时达不到判定覆盖的要求; 路径覆盖可能使测试用例达不到条件组合覆盖的要求。

2.(多选题)单元测试主要针对模块几个基本特征进行测试,该阶段主要完成( )内容的测试。

A. 系统功能

B. 局部数据结构

C. 重要的执行路径

D. 错误处理

正确答案: BCD:局部数据结构; 重要的执行路径; 错误处理;

3.(多选题)黑盒测试方法中常用的方法有( )。

A. 等价分类法

B. 边界值分析法

C. 因果图法

D. 错误推测法

正确答案: ABCD:等价分类法; 边界值分析法; 因果图法; 错误推测法;

4.(多选题)

下图给出了猫狗大战小游戏的一个典型的对战场景,其中图中的猫和狗分别代表对战的双方,在人机对战模式下,猫是机器内置的对手,用户可操作的是狗角色,图中中央上方显示的分别是对战双方的血量,中央血条下方是风力和风向标志,四个圆形图标从左到右依次表示:打击两次、强力打击工具、臭弹工具、补血工具(补血工具仅对自己进行补血,不能攻击对手)。通过按下鼠标左键的时间长短控制出手力度,时间越长,出手力度越大。请问,以下描述中哪在这里插入图片描述

些是错误的( )。

A. 从输入的角度来说,可使用等价划分方法,划分为如下三种情况:1.没超时打不中,2.没超时打中,3.超时

B. 针对攻击时的风向,可划分为如下两个等价类:1.顺风,2.逆风

C. 若对攻击工具进行等价划分,则可得到如下等价类:1.打击两次工具,2.强力打击工具,3.臭弹工具,4.补血工具

D. 可使用等价划分方法,根据风向以及力度,划分为能打中对手、不能打中对手两种情况

正确答案: ABCD:从输入的角度来说,可使用等价划分方法,划分为如下三种情况:

1.没超时打不中,2.没超时打中,3.超时;

针对攻击时的风向,可划分为如下两个等价类:1.顺风,2.逆风;

若对攻击工具进行等价划分,则可得到如下等价类:1.打击两次工具,2.强力打击工具,3.臭弹工具,4.补血工具;

可使用等价划分方法,根据风向以及力度,划分为能打中对手、不能打中对手两种情况;

5. (多选题)给定一组输入条件,每个输入条件均对应各自连续的有效取值范围,则以下的描述中正确的是( )。

A. 每个输入条件都至少可以划分为一个有效等价类和两个无效等价类

B. 如果希望更好地控制测试用例规模,则设计的测试用例能覆盖所有有效等价类就可以了

C. 从等价类中抽取测试数据时,一定要选择非边界值

D. 从输入设计测试用例后,往往还需要围绕系统输出来补充设计测试用例

正确答案: BD:如果希望更好地控制测试用例规模,则设计的测试用例能覆盖所有有效等价类就可以了; 从输入设计测试用例后,往往还需要围绕系统输出来补充设计测试用例;

三. 判断题

1.(判断题)在软件开发过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。

A. 对

B. 错

正确答案: 错

答案解析:在软件开发过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会增加。

2.(判断题)好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。

A. 对

B. 错

正确答案: 对

3.(判断题)好的测试用例应能证明软件是正确的。

A. 对

B. 错

正确答案: 错

答案解析:好的测试用例应能发现软件是错误的。

4.(判断题)等价类划分方法将所有可能的输入数据划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。

A. 对

B. 错

正确答案: 对

5.(判断题)可以用穷举测试的方法对程序进行正确证明。

A. 对

B. 错

正确答案: 错

答案解析:不能用穷举测试的方法对程序进行正确证明。

6.(判断题)功能测试是系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相同。

A. 对

B. 错

正确答案: 对

7.(判断题)测试只能证明程序有错误,不能证明程序没有错误。

A. 对

B. 错

正确答案: 对

8.(判断题)测试功能是否符合要求是白盒测试。

A. 对

B. 错

正确答案: 错

答案解析:测试功能是否符合要求是黑盒测试。

9.(判断题)边界值分析方法是取输入/输出等价类的边界作为测试用例。

A. 对

B. 错

正确答案: 对

10.(判断题)用黑盒法测试时,测试用例是根据程序内部逻辑设计的。

A. 对

B. 错

正确答案: 错

11.(判断题)模块独立要求高耦合低内聚。

A. 对

B. 错

正确答案: 错

12.(判断题)在程序调试时,找出错误的位置和性质比改正该错误更难。

A. 对

B. 错

正确答案: 对

13.(判断题)路径覆盖是最强的覆盖标准,它能满足其他所有覆盖种类的覆盖标准。

A. 对

B. 错

正确答案: 错

答案解析:路径覆盖是最强的覆盖标准,但它不能满足其他所有覆盖种类的覆盖标准,如:可能达不到条件组合覆盖的要求。

14.(判断题)单元测试指对源程序中每一个程序单元进行测试。

A. 对

B. 错

正确答案: 对

15.(判断题)确认测试应在模拟的环境中进行强度测试的基础上进行,测试计划应在需求分析阶段完成。

A. 对

B. 错

正确答案: 对

16.(判断题)在等价类方法中,为了提高测试效率,一个测试用例可以覆盖多个无效等价类。

A. 对

B. 错

正确答案: 错

17.(判断题)文档是影响软件可维护性的决定因素。

A. 对

B. 错

正确答案: 对

18.(判断题)进行软件维护活动时,直接修改程序,无须修改文档。

A. 对

B. 错

正确答案: 错

19.(判断题)适应性维护是在软件使用过程中,用户会对软件提出新的功能和性能要求,为了满足这些新的要求而对软件进行修改,使之在功能和性能上得到完善和增强的活动。

A. 对

B. 错

正确答案: 错

20.(判断题)软件生命周期最后一个阶段是书写软件文档。

A. 对

B. 错

正确答案: 错

答案解析:软件生命周期最后一个阶段是软件维护。

21.(判断题)自动化测试能比手工测试发现更多的缺陷。

A. 对

B. 错

正确答案: 错

22.(判断题)软件测试是对软件规格说明、软件设计和编码的最全面也是最后的审查。

A. 对

B. 错

正确答案: 对

23.(判断题)如果测试过程没有发现任何错误,则说明软件没有错误。

A. 对

B. 错

正确答案: 错

24.(判断题)通过软件测试,可以发现软件中所有潜伏的错误。

A. 对

B. 错

正确答案: 错

📍后记

感谢大家支持!!!


respect!


下篇见!


相关文章
|
1天前
|
安全 测试技术 持续交付
【软件工程】实用测试手册:软件工程中各种测试类型一览
【软件工程】实用测试手册:软件工程中各种测试类型一览
55 0
|
1天前
|
安全 测试技术 持续交付
软件工程之测试阶段
软件工程之测试阶段
71 0
|
7月前
|
存储 数据管理 人机交互
【软件工程】测试六
【软件工程】测试六
106 0
|
1天前
|
算法 异构计算
m基于FPGA的Alamouti编码verilog实现,包含testbench测试文件
m基于FPGA的Alamouti编码verilog实现,包含testbench测试文件
35 5
|
1天前
|
Java 测试技术 持续交付
【软件工程】单元测试:构建坚固软件基石的不可或缺一环
【软件工程】单元测试:构建坚固软件基石的不可或缺一环
21 0
|
1天前
|
安全 测试技术 持续交付
软件工程之测试
软件工程之测试
55 0
|
1天前
|
SQL 数据挖掘 关系型数据库
「SQL面试题库」 No_87 学生们参加各科测试的次数
「SQL面试题库」 No_87 学生们参加各科测试的次数
|
7月前
|
监控 项目管理 调度
【软件工程】测试十
【软件工程】测试十
37 0
|
7月前
|
敏捷开发 安全 程序员
【软件工程】测试七
【软件工程】测试七
52 0
|
7月前
【软件工程】测试九
【软件工程】测试九
46 0

热门文章

最新文章