往期回顾:
<<软件测试与验证>>期末复习题(弄懂稳过!!!)
一、选择题
1.侧重于观察资源耗尽情况下的软件表现的系统测试被称为 ( B )
(A)强度测试 (B)压力测试 (C) 容量测试 (D)性能测试
2.在下面所列举的逻辑测试覆盖中,测试覆盖最弱的是( C )
A. 条件覆盖 B. 条件组合覆盖 C. 语句覆盖 D. 判定覆盖
3.不属于白盒测试的技术是(C)
A 语句覆盖 B判定覆盖 C边界值分析 D基本路径测试
4.划分软件测试属于白盒测试还是黑盒测试的依据是 ( C )
(A)是否执行程序代码
(B)是否能看到软件设计文档
(C)是否能看到被测源程序
(D)运行结果是否确定
5.单元测试一般以___为主。(A)
A.白盒测试 B.黑盒测试 C.系统测试 D.分析测试
6.某次程序调试没有出现预计的结果,下列(B)不可能是导致出错的原因。
A.变量没有初始化 B.编写的语句书写格式不规范
C.循环控制出错 D.代码输入有误
7.不属于单元测试的内容是 (D)
(A)模块接口测试(B)局部数据结构测试(C)路径测试(D)用户界面测试
- 修复软件缺陷费用最高的是(D)阶段
A 编制说明书 B设计阶段 C编写代码 D发布
9.(d)是选择若干个测试用例,运行被测程序,使得程序中的每个可执行语
句至少执行一次
A、条件覆盖 B、组合覆盖 C、判定覆盖 D、语句覆盖
10.下列几种逻辑覆盖标准中,查错能力最强的是(D)
A.语句覆盖 B判定覆盖 C条件覆盖 D条件组合覆盖
11.软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环
节?(B)
- 功能测试 B.单元测试 C.结构测试 D.验收测试
12.连接速度测试属于(C)
A.功能测试 B. 客户端兼容性测试 C. 性能测试 D. 安全测试
13.软件测试的目的是( C )。
- 避免软件开发中出现的错误。
- 发现软件开发中出现的错误。
- 尽可能发现并排除软件开发中的错误,提升软件可靠性。
- 修改软件中的错误。
14.软件测试是软件质挝保证的重要手段,下述哪种测试是软件测试的最基础环节( B )
- 功能测试
- 单元测试
- 结构测试
- 确认测试
15.导致软件缺陷的最大原因是( A )
- 软件需求说明书
- 设计方案
- 编码
- 维护
16.某次程序调试没有出现预计的结果,下列( B )不可能是导致出错的原因。
- 变量没有初始化
- 编写的语句书写格式不规范
- 循环控制出错
- 代码输入有误
17.单元测试中用来模拟实现被测模块需调用的其他功能模块的是( B )。
- 驱动模块
- 桩模块
- 被调用模块
- 主控模块
18.集成测试计划应该在( B )阶段末提交。
- 需求分析 B.概要设计 C.详细设计 D.单元测试
19.软件测试的目的:(c )
A. 避免软件开发中出现的错误
B. 发现软件开发中出现的错误
C. 尽可能发现并排除软件中潜藏的错误,提高软件的可靠性
D. 修改软件中出现的错误
20、软件测试是采用( a )执行软件的活动。
A.测试用例 B.输入数据 C.测试环境 D.输入条件
21、在下列描述中,关于测试与调试的说法错误的是(D)
A、测试是显示错误的行为;而调试是推理的过程;
B、测试显示开发人员的错误。调试是开发人员为自己辩护;
C、测试能预期和可控。调试需要想象、经验和思考;
D、测试必须在详细设计已经完成的情况下才能开始;没有详细设计的信息调试不可能进行。
22、( A)是设计足够多的测试用例,使得程序中每个判定包含的每个条件的所
有情况(真/假)至少出现一次,并且每个判定本身的判定结果(真/假)也至少
出现一次。
A、判定-条件覆盖 B、组合覆盖 C、判定覆盖 D、条件覆盖
23、单元测试的主要任务不包括( B )。
A.出错处理 B.全局数据结构 C.独立路径 D.模块接口
24、下列关于程序效率的描述错误的是( C )。
A.提高程序的执行速度可以提高程序的效率
B.降低程序占用的存储空间可以提高程序的效率
C.源程序的效率与详细设计阶段确定的算法的效率无关
D.好的程序设计可以提高效率
25、下列( B )是对程序流程图进行简化后得到的,它可以更加突出的表示
程序控制流的结构,且不包含复合条件。
A.DD-路径图 B. 控制流图 C.MM-路径图 D. 模块调用图
26、自底向上增量式集成测试中,下面( C )描述是正确的。
A.测试由桩模块控制 B.最上面的模块最先测试
C.父单元用测试过的子单元测试 D.包含树的深度优先或广度优先遍历过程
27、测试后程序中残存的错误数目与该程序中已发现的错误数目成( D )。
A.未知 B.反比 C.相等 D.正比
28、针对是否对无效数据进行测试,可以将等价类测试分为( B )
1) 标准(一般)等价类测试 2) 健壮等价类测试 3) 弱等价类测试 4) 强等价类测试
A.3)4) B.1)2) C.1)3) D.2)4)
29.对于正交表,L次数(水平数因子数),设函数有三个参数x,y, z,分别取值为,(1,2,3),(1,2,3)(1,2,3,4),若完成正交表测试,至少需要的测试用例个数为 ( D )
A. 6 B. 8 C. 9 D. 12
30. 软件测试用例主要由测试输入数据和(C)两部分组成。
A. 测试计划 B. 测试规则
C. 测试的预期结果 D. 以往测试记录分析
二、简答题
1.软件的缺陷等级应如何划分?
1).致命错误,可能导致本模块以及其他相关模块异常,死机等问题;
2).严重错误,问题局限在本模块,导致模块功能失效或异常退出
3).一般错误,模块功能部分失效;
4).建议问题,由问题提出人对测试对象的改进意见;
2.黑盒测试的优缺点。
优点:(1)简单,无需了解程序的内部代码实现。
(2)从用户角出发,容易知道用户会使用到哪些功能,会遇到什么问题。
缺点:代码覆盖率较低,自动化测试覆盖率较低。
3.分别阐述单元测试、集成测试概念。
单元测试:对软件中的最小可测试的单元或基本组成单元进行检查和验证。
集成测试:在单元测试的基础上,将所有已通过单元测试的模块按照概要设计的要求组装为子系统或系统,进行集成测试。
4.什么是软件质量?它包含哪几方面的内容?
答:概括地说,软件质量是软件产品满足规定的和隐含的与需求能力有关的全部特征和特性。包括功能性、可靠性、易使用性、效率、可维护性、可移植性和安全性等。
5.系统测试中,α测试和β测试有什么区别?
答:α测试由最终用户在开发者的场所进行。软件在自然的环境下使用,开发者站在典型用户的后面观看,并记录错误和使用问题。α测试在受控环境下进行。
β测试在最终用户场所执行。与α测试不同,β测试中开发者通常不在现场,不在开发这控制的环境下应用。将测试中遇到的问题定期报告给开发者。
6.面向对象的测试和传统测试的测试单元的不同?
传统软件的基本构成单元为功能模块,每个功能模块一般能独立地完成一个特定的功能。而在面向对象的软件中,基本单元是封装了数据和方法的类和对象。
7、请列出5个自动化测试的优点。
1、程序的回归测试更方便
2、可以进行更多更繁琐的测试
3、可以执行一些手工测试困难或不可能进行的测试
4、充分利用资源。
5、测试具有一致性和可重复性。
6、测试的复用性。
7.、让产品更快面向市场。
8增加软件信任度。
8.优秀的软件测试工程师应具备哪些素质?
-
扎实的技术基础:掌握相关的编程语言(如Java、Python等)和测试工具(如Selenium、JUnit、TestNG等),能够编写自动化测试脚本。
-
系统思维:能够从整体上理解系统架构和设计,清晰识别出潜在的缺陷和风险。
-
故障排除能力:快速定位和分析问题,有效地解决各种软件缺陷。
-
严谨的逻辑思维:具备良好的逻辑思维能力,能够制定合理的测试计划和测试用例。
-
细节关注:对软件的每个细节都保持敏感,能够发现微小的错误和不一致之处。
-
创新精神:勇于尝试新的测试技术和方法,提升测试的效率和效果。
-
团队合作能力:能够有效地与开发人员、产品经理和其他团队成员沟通,确保测试与开发工作顺畅进行。
-
良好的时间管理能力:能够合理安排测试进度,确保按时完成测试任务。
-
持续学习的态度:保持对新技术和行业动态的关注,持续提升自己的技能和知识面。
-
用户导向:理解用户需求和使用场景,从用户的角度思考,确保软件的可用性和用户体验。
9.黑盒测试和白盒测试的区别?
黑盒测试侧重于功能和用户体验,而白盒测试则注重代码的逻辑和结构
测试视角
-
黑盒测试:
- 关注软件的输入和输出,不考虑内部实现。
- 测试人员根据需求文档和功能规格进行测试。
-
白盒测试:
- 关注程序的内部结构和实现逻辑。
- 测试人员需要了解源代码,设计测试用例来验证代码路径和逻辑。
2. 测试目标
-
黑盒测试:
- 目标是验证软件功能是否符合需求。
- 主要检查软件的外部行为,包括功能性、性能、安全性等。
-
白盒测试:
- 目标是验证代码的逻辑正确性和内部实现。
- 主要检查代码的覆盖率、路径、条件和循环等逻辑。
3. 测试方法
-
黑盒测试:
- 主要使用功能测试、性能测试、安全测试等。
- 测试过程通常是基于用户的使用场景和需求。
-
白盒测试:
- 主要使用单元测试、代码覆盖率分析、静态分析等。
- 测试过程需要设计测试用例来覆盖所有可能的代码路径。
4. 测试人员要求
-
黑盒测试:
- 测试人员不需要具备编程技能,更关注产品的功能和用户体验。
- 理解业务流程和用户需求是关键。
-
白盒测试:
- 测试人员需要具备扎实的编程知识与技能,了解具体的实现细节。
- 通常需要有开发背景。
5. 适用阶段
-
黑盒测试:
- 可以在软件开发的各个阶段进行,特别是系统测试和验收测试阶段。
-
白盒测试:
- 通常在软件的早期阶段进行,如单元测试和集成测试阶段。
本题库持续更新......
都看到这里了,点个赞再走呗朋友~
加油吧,预祝大家变得更强!