一、单项选择题(每题1分,共30分)
1、关于软件质量的描述,正确的是( )。
A、软件质量是指软件满足规定用户需求的能力。
B、软件质量保证过程就是软件测试过程。
C、软件质量特性是指软件的功能性、可靠性、易用性、效率、可维护性、可移植性。
D、以上描述都不对。
2、下列关于软件验收测试的合格通过准则错误的是( )。
A、软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求;
B、立项审批表、需求分析文档、设计文档和编码实现不一致;
C、所有测试项没有残余一级、二级和三级错误;
D、验收测试工件齐全
3、正式的技术评审FTR(Formal Technical Review)是软件工程师组织的软件质量保证活动,下面关于FTR指导原则中错误的是( )。
A、评审产品,而不是评审生产者的能力
B、要有严格的评审计划,并遵守日程安排
C、参与者人数,并要求评审会之前做好准备
D、对评审中出现的问题要充分讨论,以求彻底解决
4、以下关于集成测试的内容正确的有( )。
1集成测试也叫组装测试或者联合测试;
②在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失;
③一个模块的功能是否会对另一个模块的功能产生不利的影响;
④各个子功能组合起来,能否达到预期要求的父功能;
⑤全局数据结构是否有问题;
6单个模块的误差累积起来,是否会放大,从而达到不能接受的程度;
A、①②④⑤⑥ B、②③④⑤⑥ C、①②③⑤⑥ D、以上全部正确
5、下列关于软件测试的叙述中,选择出全部正确的一组( )。
(1) 用黑盒法测试时,测试用例是根据程序内部逻辑设计的
(2) 尽量用公共过程或子程序去代替重复的代码段
(3) 测试是为了验证该软件已正确地实现了用户的要求
(4) 对于连锁型分支结构,若有n个判定语句,则有2n条路径
(5) 尽量采用复合的条件测试,以避免嵌套的分支结构
(6) GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁
(7) 发现错误多的程序模块,残留在模块中的错误也多
(8) 黑盒测试方法中最有效的是因果图法
(9) 在做程序的单元测试时,桩(存根)模块比驱动模块容易编写
(10) 程序效率的提高主要应通过选择高效的算法来实现
A、(4)(5)(6)(7)(10) B、(1)(2)(4)(5)(7)
C、(2)(4)(5)(7)(9) D、以上描述全部正确
6、下列关于alpha、beta 测试的描述中正确的是( )。
A、alpha 测试需要用户代表参加。 B、beta 测试是不是验收测试的一种。
C、alpha 测试不需要用户代表参加。 D、beta 测试是系统测试的一种。
7、以下不属于黑盒测试的是( )。
A、负载测试 B、配置测试 C、单元测试 D、系统测试
8、以下不属于集成测试内容的是( )。
A、资源测试 B、代码规范测试
C、性能稳定性测试 D、全局数据结构代码测试
9、测试的目的是( )。
A、发现软件内的错误 B、预防错误
C、提供信心和信息 D、提供没有错误的软件
10、软件组件测试的主要目的是( )。
A、测试组件与组件之间的接口 B、组件与硬件的关联
C、发现缺陷,以及验证组件的功能 D、验证系统的的功能
11、关于静态分析的描述,下列哪项是正确的( )。
A、开发人员通常在软件验收期间使用静态分析工具
B、静态分析不需要运行被测软件,且能发现软件的失效
C、通过静态分析能够发现软件内的所有缺陷
D、通过静态分析能够发现模块和组件之间接口不一致
12、下面的哪个选项最能体现测试的优点( )。
A、与开发小组脱离。
B、作为最后的检查点,测试员可能是项目的瓶颈。
C、的测试员可以做到没有偏见,可以发现更多的缺陷。
D、开发人员可能失去对软件质量的责任感。
13、软件是( )。
A、处理对象和处理规则的描述 B、程序及其文档
C、程序 D、计算机系统
14、程序的三种基本控制结构是( )。
A、过程、子程序和分程序 B、顺序、选择和重复
C、递归、迭代和回溯 D、调用、返回和转移
15、面向对象的分析方法主要是建立三类模型,即( )。
A、系统模型、ER模型、应用模型 B、对象模型、动态模型、应用模型
C、E-R模型、对象模型、功能模型 D、对象模型、动态模型、功能模型
16、在E-R模型中,包含以下基本成分( )。
A、数据、对象、实体 B、控制、联系、对象
C、实体、联系、属性 D、实体、属性、操作
17、软件生命周期中所花费用最多的阶段是( )。
A、详细设计 B、软件编码 C、软件维护 D、软件测试
18、若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0, 1.0],现从输入的角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001.设计这组测试用例的方法是( )。
A、条件覆盖法 B、等价分类法 C、错误推测法 D、边界值分析法
19、下面几种白箱测试技术,哪种是最强的覆盖准则( )。
A、语句覆盖 B、条件组合覆盖 C、条件覆盖 D、判定覆盖
20、模块的内聚性最高的是( )。
A、功能内聚 B、时间内聚 C、偶然内聚 D、逻辑内聚
21、Putnam成本估算模型是一个( )模型。
A、静态单变量 B、动态单变量 C、静态多变量 D、动态多变量
22、第一个体现结构化编程思想的程序设计语言是( )。
A、FORTRAN语言 B、Pascal语言 C、C语言 D、PL/1语言
23、在详细设计阶段,经常采用的工具有( )。
A、PAD B、SA C、SC D、DFD
24、软件产品是否符合需求定义的过程称为( )。
A、确认测试 B、集成测试 C、验证测试 D、验收测试
25、数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )。
A、数据存储 B、加工 C、控制流 D、源程序
26、( )是指让一些关系密切的软件元素在物理上彼此靠近。
A、信息隐蔽 B、内聚 C、局部化 D、模块
27、在测试中,下列说法错误的是( )。
A、测试是为了发现程序中的错误而执行程序的过程
B、测试是为了表明程序的正确性
C、好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案
D、成功的测试是发现了至今为止尚未发现的错误的测试。
28、程序流程图是一种传统的程序设计表示工具,有其优点和缺点,使用该工具是应注意( )。
A、支持逐步求精 B、考虑控制流程
C、遵守结构化设计原则 D、数据结构表示
29、软件可行性分析是着重确定系统的目标和规模。对功能、性能以及约束条件的分析应属于下列之中的( )任务。
A、分析 B、估价 C、制定制度 D、进度分配
30、在软件开发过程中,软件结构设计是描述( )。
A、数据存储结构 B、软件模块体系 C、软件结构测试 D、软件控制过程
二、填空题(每题1分,共20分)
1、软件验收测试包括:正式验收测试、 、 。
2、从是否执行程序的角度,软件测试可以分为静态测试和 。
3、软件测试的模型分为:V模型、W模型、X模型、 和测试驱动模型。
4、测试是软件生存周期中一个的、关键的阶段,是 的重要手段,也是软件质量保证的最后一个环节。
5、二八原则是指80%的 聚集在20%的 中。
6、代码评审主要做 工作。
7、 测试人员A在测试中发现系统20个缺陷,测试人员B在系统中发现了30缺陷,他们有5个缺陷是一样的,从理论上分析,系统大概存在 个缺陷。
8、 网络通讯三个要素,包括 、 、 。
9、 在32位的系统中,int a,char b分别占用 字节和 字节。
10、在软件开发过程中要产生大量的信息,要进行大量的修改, 能协调软件开发,并使混乱减到最低程度。
11、规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称此软件具有 的软件。
12、McCall提出的软件质量模型包括 个软件质量特性。
13、为了便于对照检查,测试用例应由输入数据和预期的 两部分组成。
14、软件结构是以 为基础而组成的一种控制层次结构。
15、在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、 。
三、判断题(每题1分,共10分,正确的记为T,错误的记为F)
1、软件测试的目的是尽可能多的找出软件的缺陷。 ( )
2、单元测试能发现约80% 的软件缺陷。 ( )
3、测试人员要坚持原则,缺陷未修复完坚决不予通过。 ( )
4、Beta 测试是验收测试的一种。 ( )
5、自底向上集成需要测试员编写驱动程序。 ( )
6、我们可以人为的使得软件不存在配置问题。 ( )
7、好的测试员不懈追求完美。 ( )
8、测试程序仅仅按预期方式运行就行了。 ( )
9、可以发布具有配置缺陷的软件产品。 ( )
10、 所有软件都有一个用户界面,因此必须测试易用性。 ( )
四、简答题(共计40分)
1、如果能够执行完美的黑盒测试,还需要进行白盒测试吗?为什么?(5 分)
2、测试人员在软件开发过程中的任务是什么。(5分)
3、简述容错技术的四种主要手段,并解释。(5分)
4、就程序设计语言的工程特性而言,对程序编码有哪些要求。(5分)
5、Linux命令的配置练习。
(1)用pwd命令查看当前所在的目录。(2分)
(2)在当前目录下,创建测试目录test,并利用ls命令列出文件和目录,确认test目录创建成功。(2分)
(3)利用touch命令,在当前目录创建一个新的空文件newfile(2分)
(4)在当前目录下创建目录test,进入test目录创建空文件file1和空文件file2。(2分)
(5)用数字形式为文件file1设置权限,所有者可读、可写、可执行;其他用户和所属组用户只有读和执行的权限,并查看设置结果。(4分)
(6)创建一个新用户user01,设置其主目录为/home/user01,组群为myuser,并查看/etc/passwd文件的最后一行。(2分)
(7)给用户user01设置密码“123456”,查看文件/etc/shadow文件的最后一行。(2分)(8)更改用户user01的帐户名为user02,并查看/etc/passwd文件的最后一行。(2分)
(9)删除用户user02,并查看/etc/passwd文件的最后一行。(2分)