dreamy8594
一.填空
1、 系统测试使用( C )技术, 主要测试被测应用的高级互操作性需求, 而无需考虑被测试应用的内部结构。
A、 单元测试 B、 集成测试 C、 黑盒测试 D、白盒测试
2、单元测试主要的测试技术不包括(B )。
A、 白盒测试 B、 功能测试
C、 静态测试 D、 以上都不是
3、(A )的目的是对最终软件系统进行全面的测试,确保最终软件系统满足产品需求并且遵循系统设计。
A、 系统测试 B、 集成测试
C、 单元测试 D、 功能测试
4、如果一个产品中次严重的缺陷基本完成修正并通过复测,这个阶段的成品是( A )。
A、 Alpha版 B、Beta版
C、正版 D、以上都不是
5、自底向上法需要写(A )。
A、 驱动程序 B、 桩程序 C、驱动程序和桩程序 D、 .以上都不是
6、测试ATM取款功能,已知取款数只能输入正整数,每次取款数要求是100的倍数且不能大于500,下面哪个是正确的无效等价类(C)
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,+∞);
7、因果图/判定表工程方法在以下那种情况下不适用(C)
A、输入输出明确,或输入输出因果关系明确的情况下
B、被分析的特性或功能点复杂,输入项目很多的情况下
C、系统输入之间相互约束多,需要做大范围的组合测试情况下
D、系统输入之间基本没有相互联系
8、以下说法不正确的是(D)
A、测试原始需要明确了产品将要实现了什么
B、产品测试规格明确了测试设计内容
C、测试用例明确了测试实现内容
D、以上说法均不正确
9、可测试性中,有关系统可观察性的理解,下面说法那个是错误的( B)
A、系统所有的输出结果可观察,错误输出易于识别;
B、系统运行状态和内部处理的过程信息可观察;
C、系统内部变量名及其取值可观察;
D、系统内部重要对象的状态和属性可观察;
E、系统内部重要的操作的处理时间可观察;
F、系统内部重要的资源的占用情况及单个资源的创建、保持、释放过程可观察
10、测试脚本的编写规范强调:(ABCD )
A、可读行 B、可重用性 C、可维护性 D、可移植性
11、当继承某个特性是,通常会从哪些角度对该特性进行测试分析?(AC )
A、失效影响度 B、成熟度 C、继承方式 D、用户原始需求
12、从下列关于软件测试的叙述中,选出正确的叙述(CD)
A、用黑盒法测试时,测试用例是根据程序内部逻辑设计的
B、测试的目的是验证该软件已正确的实现了用户的要求
C、发现错误多的程序块,残留在模块中的`错误也多
D、测试设计时,应充分考虑异常的输入情况
13、软件验收测试的合格通过准则是:(ABCD)
A. 软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
B. 所有测试项没有残余一级、二级和三级错误。
C. 立项审批表、需求分析文档、设计文档和编码实现一致。
D. 验收测试工件齐全。
13、软件测试计划评审会需要哪些人员参加?(ABCD)
A.项目经理
负责人
C.配置负责人
D.测试组
14.测试设计员的职责有:(BC )
A.制定测试计划
B.设计测试用例
C.设计测试过程、脚本
D.评估测试活动
15.软件实施活动的进入准则是:(ABC)
A.需求工件已经被基线化
B.详细设计工件已经被基线化
C.构架工件已经被基线化
D.项目阶段成果已经被基线化
二、判断题(正确的√,错误的╳)共10分,每小题1分
1. 软件测试的目的是尽可能多的找出软件的缺陷。( Y)
2. 负载测试是验证要检验的系统的能力最高能达到什么程度。(N )
3. 测试人员要坚持原则,缺陷未修复完坚决不予通过。(N)
4. 自动化测试能比手工测试发现更多的缺陷(N)
5. 错误猜测法基于这样一种假设,以前犯过的错误,以后同样会犯,我犯过的错误别人同样会犯,前人犯过的错误,后人同样会犯(N)
6. 软件测试中的二八原则暗示着测试发现的错误中的80%很可能起源于程序模块的20%(Y)
7. 某WEB系统设计中,用户点击“退出”按钮从系统中退出,界面回到初始登陆界面。此时不关闭窗口,使用浏览器的回退功能,可以回到之前的用户界面,继续进行用户操作。这种合适的人性化设计,恩那个避免用户误点击退出按钮后重新登录的繁琐操作;这种说法是否正确(N)
8. 在确定性能测试指标值时,参考的国际标准、国标、运营商规范中对此要求并不一样,可以视情况选择有利于我们的指标值,但必须要比竞争对手高,这样才有利于市场竞争力(N)
9. 测试执行时,应该对每一个测试结果做全面的检查,包括日志,这种说法是否正确( N)
先米团子
一. 简答题:1.软件工程的定义 P4答:软件工程师一门工程学科,涉及软件生成的各个方面,从最初的系统描述一直到使用后的系统维护,都属于其学科范畴。2.软件工程所面临的主要问题 P3表格答:多样性的挑战:必须开发出新技术,制作可靠的软件,从而足以灵活应对这种多样性。 交付上的挑战:在不损及系统质量的前提下,缩短大型、复杂系统的移交时间。 信任的挑战:研究能说明软件可信的技术。3.社会技术系统定义及主要特征 P12-13答:定义:一个包含有人、软件和硬件在内的系统。特征:它们都有其整体特性他们通常是不确定的系统支持机构目标的程度和范围不仅仅依赖于系统本身4.瀑布模型的概念及其包含阶段 P39-40答:概念:这个模型采用一些基本的过程活动,即描述、开发、有效性验证和进化,并且使 用单独的过程阶段(如需求描述、软件设计、实现和测试等阶段)表现这些活动 包含阶段:需求分析和定义、系统和软件设计、实现和单元测试、集成和系统测试、运行和维护5.增量式开发的概念 P43答:增量式开发是一种集中了这些模型的优点的体重综合方法。每一步增量实现了一个或多个最终用户功能。每一步增量包含所有早期的已开发的功能集加上一些新的功能;系统在逐步累积的增量中增长。就是一步一步渐增式的开发。6.软件工程的四个基本过程活动 P38答:软件描述、软件设计和实现、软件有效性验证、软件进化7.介绍软件工程的功能需求,非功能需求和领域需求 P73答:功能需求:包括对系统应该提供的服务、如何对输入作出反应以及系统在特定条件下的行为的描述。在某些情况下,功能需求可能还需明确声明系统不应该做什么。 非功能需求:对系统提供的服务或功能给出的约束。包括时间约束、开发过程的约束、标准等。非功能需求常用于整个系统。通常不用在单个系统或服务中。 领域需求:这是来自系统的应用领域的需求,反应了该领域的特点。他们也可能是功能需求或非公能需求。8.客户机/服务器模型及优缺点 P152-153答: 客户机/服务器体系结构的模型是一个分布式系统模型,系统由一组服务及相关的服务器组成,客户机访问并使用这些服务。优点:它是一个分布式体系结构。由许多分布式处理器构成网络系统可提供更有效的使用。添加一台服务器或更新服务器很容易而且是透明的,不会影响系统的其他部分。缺点:在系统中集成一台服务器需要改变现存的客户机和服务器以便获得性能提升。要为每个服务器建立专门的数据模型以便优化其性能。9.分层模型及优缺点 P153-154答: 把系统组织成一系列的层次,每一层提供一组服务。每一层定义一个抽象机,每个抽象机是由其下层的源机的代码构成的。优点:支持系统的增量式开发。抽象机转换到其他机器上实现比较容易。缺点:顶层上的用户服务可能会需要穿过其相邻层来获取由更低层所提供的服务。性能也是一个问题。10.数据处理系统及特点 P181答:系统是以数据为中心的,它们的数据库要比系统本身大很多个数量级。特点:是批处理系统,数据的输入和输出时成批地从文件或数据库中取出,也是成批地存入文件或数据库中的,而不是对用户终端进行输入和输出。11.编译器一般体系结构中包含的组件 P188-189答:词法分析器、符号表、语法分析器、语法树、语义分析器、代码生成器。12.面向对象设计中,并发对象的实现方式和工作方式 P194-195答:实现方式与工作方式:服务器 对象被实现为一个并行进程,它的方法对应为定义的对象操作。在收到外部时间后方法被启动,方法的执行与其他对象上的方法是并行的。当对象完成了自身的操作时,对象中止,等待进一步的服务请求。主动对象 对象状态的改变可以来自对象内部操作的执行。代表对象的进程不停地执行这些操作,从不挂起。13.用户界面设计过程中的核心活动 P230答:用户分析:理解用户所做的任务、工作环境、使用的其他系统、如何在工作中与他人交互等。系统原型开发:开发原型系统并展示给用户看,让他们指导界面的进化。界面评估:一个更正式的评估活动,在评估中收集有关用户对界面的真实体验信息。14.极限编程适合敏捷方法原则 P244答:(1)增量式开发时通过系统的小的频繁发布的版本来支持的,其间所采用的需求描述方法是基于客户情节或脚本的,这样的客户情节或脚本可以成为过程规划的根据。(2)客户的参与是通过全时雇佣到开发团队的方式。客户代表参与开发并负责定义系统的接受测试。(3)人是通过结对编程、集体对系统代码所有权、可以忍受的开发过程而无需超频的工作小时来运作的。(4)变更是通过经常性的系统版本、测试优先的开发以及连续的集成来支持的。通过持续的再分解来改善代码质量并使用不预期系统将来的变更的简单设计,来支持简洁性的维护。15.极限编程测试的关键特性 P246答: XP当中的测试的关键特性:(1)测试优先的开发。(2)来自脚本的增量式测试开发。(3)用户参与到测试开发和有效性验证中。(4)自动测试系统的使用。16.软件原型在软件开发过程中的使用方式答:(1)在需求工程过程中,原型可以帮助导出系统需求并验证系统需求的有效性。 (2)在系统设计阶段,原型可以用来探索特殊的软件解决方案和支持用户界面设计。 (3)在测试阶段,原型可以用来对准备移交给客户的系统运行背对背的测试。17.在规划软件复用时需要考虑的相关约束答:软件开发进度表 所预计的软件生命期 开发团队的背景,技术和经验软件的危险程度和它的非功能性需求应用领域 系统运行平台18.在集成商业限制系统中面临的问题答:对功能和性能缺乏控制 商业现成系统间的互操作问题 无法控制系统的进化 COTS产品厂商的支持19.组件与对象之间有什么区别答:组件是可部署的实体组件不定义类型组件实现是不透明的组件是独立于语言的 组件是标准化的20.基于组件的软件开发过程与传统的软件开发过程有什么不同答:(1)最初对用户需求的开发只需要是概要性的而不用十分详细,且鼓励信息持有者在定 义他们的需求时尽可能地灵活。 (2)在过程的早期阶段根据可利用的组件来细化和修改需求。 (3)在系统体系结构设计完成后,会有一个进一步的组件搜索及设计精炼的活动。 (4)开发就是将已发现的组件集成在一起的组成过程。21.列举软件维护费用高的原因答:团队稳定性,合同责任 人员技术水平 程序年龄和结构22.对软件可维护性评估有用的过程度量包括哪些答:纠正性维护请求的数目影响分析所需的平均时间实现一个变更请求的平均时间突出的变更请求的数目23.系统再工程过程中的行为有哪些答:源代码转换 反向工程 程序结构改善 程序模块化 数据再工程
优质工程师考试问答知识库