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

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 【软件工程题库】第六章 编码和测试

一. 单选题

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!


下篇见!


相关文章
|
7月前
|
安全 测试技术 持续交付
【软件工程】实用测试手册:软件工程中各种测试类型一览
【软件工程】实用测试手册:软件工程中各种测试类型一览
173 0
|
1月前
|
机器学习/深度学习 人工智能 安全
探索AI在软件工程中的最新应用:自动化测试与代码审查
探索AI在软件工程中的最新应用:自动化测试与代码审查
|
2月前
|
JavaScript
vue尚品汇商城项目-day07【55.编码测试与打包发布项目】
vue尚品汇商城项目-day07【55.编码测试与打包发布项目】
33 3
|
3月前
|
小程序 测试技术 程序员
『软件工程12』软件工程实践方法——软件测试
该文章详细阐述了软件测试的重要性和基本原则,并按测试阶段顺序介绍了单元测试、集成测试、确认测试以及系统测试的具体内容和实施步骤。
『软件工程12』软件工程实践方法——软件测试
|
3月前
|
测试技术 持续交付 UED
软件测试的艺术与科学:平衡创新与质量的探索在软件开发的波澜壮阔中,软件测试如同灯塔,指引着产品质量的方向。本文旨在深入探讨软件测试的核心价值,通过分析其在现代软件工程中的应用,揭示其背后的艺术性与科学性,并探讨如何在追求技术创新的同时确保产品的高质量标准。
软件测试不仅仅是技术活动,它融合了创造力和方法论,是软件开发过程中不可或缺的一环。本文首先概述了软件测试的重要性及其在项目生命周期中的角色,随后详细讨论了测试用例设计的创新方法、自动化测试的策略与挑战,以及如何通过持续集成/持续部署(CI/CD)流程优化产品质量。最后,文章强调了团队间沟通在确保测试有效性中的关键作用,并通过案例分析展示了这些原则在实践中的应用。
96 1
|
5月前
|
敏捷开发 机器学习/深度学习 人工智能
探索式测试在现代软件工程中的实践与挑战
随着软件开发模式的迭代升级,传统的测试方法已不能完全满足快速变化的市场需求和敏捷开发的节奏。探索式测试作为一种灵活、启发式的测试实践,逐渐受到业界的关注。本文将深入探讨探索式测试的定义、特点及其在现代软件工程中的应用,并分析实施过程中可能遇到的挑战,旨在为软件测试人员提供一种创新的测试视角和方法。
|
6月前
|
SQL 存储 Java
程序技术好文:软件工程概论第一次课堂测试
程序技术好文:软件工程概论第一次课堂测试
30 0
|
7月前
|
算法 异构计算
m基于FPGA的Alamouti编码verilog实现,包含testbench测试文件
m基于FPGA的Alamouti编码verilog实现,包含testbench测试文件
86 5
|
7月前
|
Java 测试技术 持续交付
【软件工程】单元测试:构建坚固软件基石的不可或缺一环
【软件工程】单元测试:构建坚固软件基石的不可或缺一环
98 0
|
9天前
|
监控 JavaScript 测试技术
postman接口测试工具详解
Postman是一个功能强大且易于使用的API测试工具。通过详细的介绍和实际示例,本文展示了Postman在API测试中的各种应用。无论是简单的请求发送,还是复杂的自动化测试和持续集成,Postman都提供了丰富的功能来满足用户的需求。希望本文能帮助您更好地理解和使用Postman,提高API测试的效率和质量。
51 11

热门文章

最新文章