软件测试工程师面试宝典Word格式文档下载.docx

上传人:b****2 文档编号:3655141 上传时间:2023-05-02 格式:DOCX 页数:124 大小:273.10KB
下载 相关 举报
软件测试工程师面试宝典Word格式文档下载.docx_第1页
第1页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第2页
第2页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第3页
第3页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第4页
第4页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第5页
第5页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第6页
第6页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第7页
第7页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第8页
第8页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第9页
第9页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第10页
第10页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第11页
第11页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第12页
第12页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第13页
第13页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第14页
第14页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第15页
第15页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第16页
第16页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第17页
第17页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第18页
第18页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第19页
第19页 / 共124页
软件测试工程师面试宝典Word格式文档下载.docx_第20页
第20页 / 共124页
亲,该文档总共124页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

软件测试工程师面试宝典Word格式文档下载.docx

《软件测试工程师面试宝典Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《软件测试工程师面试宝典Word格式文档下载.docx(124页珍藏版)》请在冰点文库上搜索。

软件测试工程师面试宝典Word格式文档下载.docx

TestDirector,TestManager,QACenter,TestViewManager

缺陷管理工具:

ClearQuest,TrackRecord,Bugzilla

实战能力(工作经验)

◆公司的测试流程

◆公司的具体缺陷管理流程(提交bug报告,追踪bug状态)

◆测试环境的搭建及管理

◆测试计划,测试用例,测试报告等相关文档的编写

外语

◆英语

◆日语

行业知识

行业主要指测试人员所在企业涉及的行业领域,例如很多IT企业从事石油、电信、银行、电子政务、电子商务等行业领域的产品开发。

行业知识即业务知识,是测试人员做好测试工作的又一个前提条件,只有深入地了解了产品的业务流程,才可以判断出开发人员实现的产品功能是否正确。

很多时候,软件运行起来没有异常,但是功能不一定正确。

只有掌握了相关的行业知识,才可以判断出用户的业务需求是否得到了实现。

行业知识与工作经验有一定关系,通过时间即可以完成积累。

软件测试基本理论知识试题汇总

一、判断题

1.软件测试的目的是尽可能多的找出软件的缺陷。

()

2.Beta测试是验收测试的一种。

3.验收测试是由最终用户来实施的。

4.项目立项前测试人员不需要提交任何工件。

5.单元测试能发现约80%的软件缺陷。

6.代码评审是检查源代码是否达到模块设计的要求。

7.自底向上集成需要测试员编写驱动程序。

8.负载测试是验证要检验的系统的能力最高能达到什么程度。

9.测试人员要坚持原则,缺陷未修复完坚决不予通过。

10.代码评审员一般由测试员担任。

11.我们可以人为的使得软件不存在配置问题。

12.集成测试计划在需求分析阶段末提交。

13、好的测试员不懈追求完美。

()

14、测试程序仅仅按预期方式运行就行了。

15、不存在质量很高但可靠性很差的产品。

16、软件测试员可以对产品说明书进行白盒测试。

()

17、静态白盒测试可以找出遗漏之处和问题。

18、总是首先设计白盒测试用例。

19、可以发布具有配置缺陷的软件产品。

20、所有软件必须进行某种程度的兼容性测试。

21、所有软件都有一个用户界面,因此必须测试易用性。

22、测试组负责软件质量。

参考答案

1、Y

软件测试的目的就是为了发现软件中的缺陷,从这个意义上面说上面的这个论断是正确的。

不少人会认为软件测试可以保证软件的质量,其实这个观点是错误,测试只是软件质量控制中的一个角色,其活动并不能达成软件质量保证的效果。

所以不要认为一个公司里面如果有了软件测试人员,产品的质量就会好起来。

2、Y

Beat测试和验收测试是两种不同的测试。

验收测试的目的是为了以发现”未实现的需求”为目的,以评估”适合使用”为目标,该类测试的不是以发现缺陷为主要目的。

beta测试是一模拟真实的使用环境从而发现缺陷的一种测试。

所以两者之间的是非包容关系。

3、N

上面说到了验收测试的目的和目标,所以验收测试也可是是软件生产的企业内部人员来实施。

例如产品经理。

当软件以项目的形式出现,那么验收测试由最终用户来实施的情况是比较长见的。

但是对于产品形式的软件,生产企业内部的验收测试会更多。

4.N

应该说这道题目没有明确的答案,在项目立项前测试人员是不是要把一些准备工作以工件的形式给记录下来是完全取决于该企业的软件开发过程的要求。

同时不同企业,立项前要达成的一些必要条件也是大相径庭的。

应该说这一题目出的不是很好,如果你是出题人这家企业的测试工程师,那么就应该有一个明确的答案。

5.N

同样这一题目也没有标准答案。

因为该数据的来源和其统计的方法,样本都没有一个工业标准。

这样出来的数据同样不具有权威性。

这里我可以说一个简单的例子,在用ASP,php这类脚本语言开发网页的时候是根本没有复杂的单元测试。

那么这样的数字应用在网站开发上面是否有意义,还是值得商榷的。

所以这道题目出的不好,没有明确的答案

6.N

代码审查是一种静态技术,从这个意义上说代码复查是需要和其他的一些动态测试技术配合才能检查代码是否符合设计的要求

7.Y

这道题目大家看下top-down和down-top的集成测试示意图就能得出明确的答案。

这里需要了解的是什么是驱动测试程序,什么是桩程序。

如果集成组件数量众多,多关系层次,那么不论是什么类型的集成测试。

驱动程序和桩程序都是需要开发的。

8.N

关于负载测试和压力测试在论坛中的帖子中有详细的解释,大家可以去看一下就能得出正确的答案

9.N

同样,这一题没有正确的答案。

缺陷是否修复是需要听取测试人员的意见,但测试人员的意见非决定性。

所以还是要看一个企业赋予测试人员有多大的权力。

10.N

如果测试员有这个水平,那么当然是可以参加的。

不过大多数的企业不会让普通的测试人员参与代码的评审。

11.N

首先大家先搞清楚什么是配置管理什么是软件配置,从这道题目中看不出出题人想问的是关键工程中的配置管理还是单纯的软件配置。

但是可以肯定的是不论是何种情况,答案均是否定的。

12.N

集成测试计划在开发人员完成软件集成计划之后就可以开始进行了。

所以在需求分析阶段之后提交是不现实的事情,应该在软件的设计阶段后,编码前。

13、N14、N

15、N

软件可靠性是软件系统在规定的时间内及规定的环境条件下,完成规定功能的能力

软件质量就是“软件与明确地和隐含地定义的需求相一致的程度”。

具体地说,软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具有的隐含特征的程度。

16、N17、Y18、N19、Y20、Y21、Y

22、N

软件测试是保障软件质量的手段之一,但不是唯一手段,软件测试是软件产品质量高的必要非充分条件。

二、不定项选择题

1.软件验收测试的合格通过准则是:

A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。

B.所有测试项没有残余一级、二级和三级错误。

C.立项审批表、需求分析文档、设计文档和编码实现一致。

D.验收测试工件齐全。

2.软件测试计划评审会需要哪些人员参加?

A.项目经理

B.SQA负责人

C.配置负责人

D.测试组

3.下列关于alpha测试的描述中正确的是:

A.alpha测试需要用户代表参加

B.alpha测试不需要用户代表参加

C.alpha测试是系统测试的一种

D.alpha测试是验收测试的一种

4.测试设计员的职责有:

A.制定测试计划

B.设计测试用例

C.设计测试过程、脚本

D.评估测试活动

5.软件实施活动的进入准则是:

A.需求工件已经被基线化

B.详细设计工件已经被基线化

C.构架工件已经被基线化

D.项目阶段成果已经被基线化

6.下面哪些属于动态分析()

A.代码覆盖率

B.模块功能检查

C.系统压力测试

D.程序数据流分析

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、软件项目计划

1、ABCD

回答这道题,你必须是这家企业的员工。

前面说到了验收测试的目的和目标,一个是需求必须实现,二是证明软件是适合使用的。

这样能满足这两个通用标准就可以了。

当然有些软件企业会对验收测试标准做一些调整。

2、ABCD

上面的4种角色都需要参与

3、AD

首先大家需要知道alpha测试是系统级别的测试,该测试是在一个受控的环境中进行的。

用户需要直接参与进来。

所以答案应该是AD

4、BC

合理的答案的是BC,同时要看软件企业对该类人员的职责是如何定义。

5、ABC

先要了解一下什么是基线。

这个是软件配置管理中一个重要的概念。

工作产品必须纳入到一定的基线里面。

所以选择ABC是必定的,至于是否选择D要看这家企业自身的标准了。

6、BC7、ABC8、CD9、ABCD10、A11、ABCD12、D13、C

三、填空题

1、软件实施活动的输出工件有___、___、___、___。

2、代码评审主要做______工作。

3、软件实施活动中集成员的职责是___。

4、验证与确认软件实施活动主要有___、代码评审___、___、___、___、SQA验证。

5、__________表明测试已经结束。

6、软件测试的目的是_________。

7、软件测试主要分为_________、_________、_________、_________四类测试。

8、软件测试活动有_________、_________、_________、_________、_________、_________、_________、_________八个步骤。

9、软件测试活动的输出工件有_________、_________、_________、_________、_________。

10、软件测试角色有_________、_________、_________、_________。

11.软件验收测试包括_________、_________、_________三种类型。

12.系统测试的策略有_________、_________、_________、_________、_________、_________、_________、_________、_________、_________、_________、_________、_________、_________、_________等15种方法。

13.设计系统测试计划需要参考的项目文档有_________、_________、和_________。

14.对面向过程的系统采用的集成策略有_________,_________两种。

15.通过画因果图来写测试用例的步骤为

及把因果图转换为状态图共五个步骤。

参考答案

1、无

2、关于代码和详细设计相一致、在编码阶段没有引入新的错误等方面的保证

3、无

4、验证与确认软件实施活动主要有需求规格说明验证、软件测试团队组织管理、设计规格说明验证、代码验证、软件测试计划管理、交付验证、SQA验证。

5、测试需求中列出的所有功能及测试过程中发现缺陷的回归测试均已完成表明测试已经结束。

6、软件测试的目的是尽可能多的找出软件的缺陷。

7、软件测试主要分为单元测试、集成测试、系统测试、验收测试四类测试。

8、软件测试活动有制定测试计划、方案、设计和生成测试用例、准备测试数据、执行测试管理缺陷、生成测试报告、测试评估、测试结束八个步骤。

9、软件测试活动的输出工件有测试计划、测试方案、测试用例、测试报告、缺陷报告。

测试计划---输出《测试计划》

测试设计---输出《测试方案》

测试实现---输出《测试用例》、《测试规程》、测试脚本

测试执行---输出《测试报告》《测试日志》《缺陷报告》

那实施活动的输出工件是不是有需求规格说明书、用户手册、开发总结、测试总结呢

10、软件测试角色有测试管理人员、测试方案工程师、测试工程师、测试员。

11、软件验收测试包括正式验收测试、alpha测试、beta测试三种测试。

12.系统测试的策略有功能测试、性能测试、文档测试、配置测试、安装和卸载的测试、用户界面测试、可用性测试、兼容性测试、易用性测试、安全测试、压力测试、负载测试、回归测试、比较测试、故障恢复测试等15种方法。

13.设计系统测试计划需要参考的项目文档有软件测试计划、软件需求工件、和迭代计划。

14.对面向过程的系统采用的集成策略有自顶向下,自底向上两种。

分析软件规格说明描述中的原因和结果,并为每个原因和结果赋予一个标识符。

根据因果关系画因果图

在因果图上用一些记号标明约束或限制条件

把因果图转换成判定表

根据判定表设计测试用例

利用因果图生成测试用例的基本步骤是:

§

分析软件规格说明描述中,哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。

分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系?

根据这些关系,画出因果图。

由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。

为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件。

把因果图转换成判定表。

把判定表的每一列拿出来作为依据,设计测试用例

四、名词解释

软件工程、黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试、α测试、β测试、驱动模块、桩模块、静态测试、回归测试、动态测试、等价划分法、边界值分析法

软件工程:

概括的说,软件工程是指导计算机软件开发和维护的工程学科。

采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效的维护它,这就是软件工程。

软件测试:

标准定义:

使用人工或自动手段,来运行或测试某个系统的过程。

其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。

最终目的是令客户满意。

针对测试人员的定义:

以发现错误为目的,努力发现产品中每个可以想象到的故障或弱点的过程。

综合定义:

软件测试是贯穿整个软件开发生命周期、对软件产品(包括阶段性产品)进行验证和确认的活动过程,其目的是尽快尽早地发现在软件产品中所存在的各种问题——与用户需求、预先定义的不一致性。

黑盒测试(black-boxtesting):

在知道产品应该具有的功能的条件下,检验每个功能是否都能正常使用的测试方法。

又称功能测试,指的是把被测的软件看作是一个黑盒子,完全不考虑程序的内部结构和处理过程,只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接受输入数据产生正确的输出信息,并且保持外部信息的完整性。

黑盒测试是在程序接口进行的测试。

白盒测试(white-boxtesting):

在知道产产品内部工作过程的条件下,检验产品内部动作是否按照规格说明书的规定正常进行的测试方法。

又称结构测试,指的是把程序看成装载一个透明的白盒子里面,也就是完全了解程序的结构和处理过程。

按照程序内部的逻辑测试程序,检验程序中的每条通路是否都能按预定要求正确工作。

单元测试(unit-testing):

指对软件中的最小可测试单元进行检查和验证。

集成测试(integrationtesting):

指将通过测试的单元模块组装成系统或子系统,再进行测试,重点测试不同模块的接口部分。

系统测试(system-testing):

指的是将整个软件系统看作一个整体进行测试,包括对功能、性能,以及软件所运行的软硬件环境进行测试。

验收测试(acceptancetesting):

又称确认测试,指的是在系统测试的后期,以用户测试为主,或有测试人员等质量保障人员共同参与的测试。

它的目标是验证软件的有效性。

α(Alpha)测试:

α测试由用户在开发者的场所进行,并且在开发者对用户的“指导”下进行的测试。

开发者负责记录错误和使用中遇到的问题。

α测试指的是由用户、测试人员、开发人员等共同参与的内部测试。

β(Beta)测试:

β测试由软件的最终用户在一个或多个客户场所进行。

开发者通常不在现场,因此β测试是软件在开发者不能控制的环境中的“真实”应用。

β测试指的是内测后的公测,即完全交给最终用户测试。

驱动模块(driver):

模拟被测模块的上级模块,驱动模块用来接收测试数据,启动被测试模块并输出结果。

桩模块(stub):

是指模拟被测模块所调用的模块。

静态测试(statictesting):

是指不实际运行被测软件,而只是静态地检查程序代码、界面或文档中可能存在的错误的过程。

动态测试(dynamictesting):

是指实际运行被测程序,输入相应的测试数据,检查实际输出结果和预期结果是否相符的过程。

所以我们判断一个测试属于静态测试还是动态测试,唯一的标准就是看是否运行程序。

回归测试(regressiontesting):

是指对软件的新的版本测试时,重复执行上一个版本测试时的用例。

等价划分法(EquivalenceClassTesting):

等价类划分法是一种黑盒测试技术,它不考虑程序的内部结构,只是根据软件的需求说明来对输入的范围进行细分,然后再从分出的每一个区域内选取一个有代表性的测试数据。

边界值分析法(BoundaryValueTesting):

边界值分析方法是对等价类划分方法的补充。

长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误。

五、简答题

请根据您以往的学习和工作经历,结合您的个人经验回答以下问题。

您可以尽可能详细和完整的表达出自己的思想,如果书写空间不够,您可以将答案写在题目所在页的背面。

如果需要稿纸请同接待人员联系。

1、试述软件的概念和特点?

软件复用的含义?

构件包括哪些?

软件的概念:

软件是程序、数据结构和相关文档的集合,用于实现所需要的逻辑方法、过程或控制。

软件是把知识与技术紧密结合的智力成果,是在研制、开发中被创造出来的一种信息产品。

软件的特点:

抽象性

软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。

不会磨损

在软件的运行和使用期间,没有硬件那样的机械磨损、老化问题,但软件维护比硬件维护要负责的多。

软件开发工作最大、开发效率低、成本高,但复制容易、成本极低。

对计算机系统的依赖性

软件具有无形性,可以多次使用,但商业寿命较短。

软件复用(SoftWareReuse):

软件复用是将已有软件的各种有关知识用于建立新的软件,以缩减软件开发和维护的花费,提高软件生产力和质量的一种重要技术。

构件:

构件是系统中实际存在的可更换部分,它实现特定的功能,符合一套接口标准并实现一组接口。

构件代表系统中的一部分物理实施,包括软件代码(源代码、二进制代码或可执行代码)或其等价物(如脚本或命令文件)。

2、瀑布模型和螺旋模型的主要区别是什么?

(1)瀑布模型强调的保证软件的质量,忽略人力,时间,资源等成本因素,以质量为第一目标,每次需求发生变更都要从头再来,适合于一些大型稳定的项目。

 

 

螺旋模型是一种增量迭代开发的模型,每一次循环都是一次版本的升级,可提高软件的适应能力。

比较适合于前期需求不稳定,后期需求新增变更较多的项目。

(2)瀑布模型是基于质量的,是由文档驱动的。

螺旋模型是风险驱动的,更需要经验丰富的风险评估知识和水平。

3、软件开发模型和软件生命周期的概念是什么?

两者有何区别?

软件生命周期是软件从提出开发开始到最终灭亡所经历的时期。

大体上分为软件定义、软件开发和软件维护三个阶段。

软件开发模型是软件开发全过程、软件开发活动以及它们之间关系的的结构框架。

其作用是为软件项目的管理提供里程碑和进度表,为软件开发提供原则和方法。

软件开发模型主要有:

以软件需求可完全确定为前提的瀑布模型

在软件开发初期只能提供基本需求所采用的渐进式开发模型。

如原型模型、螺旋模型

以形式化开发方法为基础的变换模型。

4、净室软件工程的策略是什么?

净室软件工程是一种在软件开发过程中强调建立正确性的需要的方法,通过在第一次正确地书写代码增

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2