软件测试工程师笔面试试题.docx
《软件测试工程师笔面试试题.docx》由会员分享,可在线阅读,更多相关《软件测试工程师笔面试试题.docx(12页珍藏版)》请在冰豆网上搜索。
![软件测试工程师笔面试试题.docx](https://file1.bdocx.com/fileroot1/2023-6/1/db985a60-48bb-4700-aebf-44bbf5637379/db985a60-48bb-4700-aebf-44bbf56373791.gif)
软件测试工程师笔面试试题
软件测试工程师笔面试试题
面试题
01.为什么要在一个团队中开展软件测试工作?
02.您是否了解以往所工作的企业的软件测试过程?
如果了解,请试述在这个过程中都有哪些工作要做?
分别由哪些不同的角色来完成这些工作?
03.您是否了解以往所工作的企业的软件开发过程?
如果了解,请试述一个完整的开发过程需要完成哪些工作?
分别由哪些不同的角色来完成这些工作?
(对于软件测试部分,可以简述)
04.您在以往的测试工作中都曾经具体从事过哪些工作?
其中最擅长哪部分工作?
05.您所熟悉的软件测试类型都有哪些?
请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试……)
06.请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。
07.测试计划工作的目的是什么?
测试计划工作的内容都包括什么?
其中哪些是最重要的?
08.您认为做好测试计划工作的关键是什么?
09.您所熟悉的测试用例设计方法都有哪些?
请分别以具体的例子来说明这些方法在测试用例设计工作中的应用。
10.您认为做好测试用例设计工作的关键是什么?
11.请以您以往的实际工作为例,详细的描述一次测试用例设计的完整的过程。
12.您以往的工作中是否曾开展过测试用例的评审工作?
如果有,请描述测试用例评审的过程和评审的内容。
13.您以往是否曾经从事过性能测试工作?
如果有,请尽可能的详细描述您以往的性能测试工作的完整过程。
14.您在从事性能测试工作时,是否使用过一些测试工具?
如果有,请试述该工具的工作原理,并以一个具体的工作中的例子描述该工具是如何在实际工作中应用的。
15.您认为性能测试工作的目的是什么?
做好性能测试工作的关键是什么?
16.在您以往的工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?
如何提交高质量的软件缺陷(Bug)记录?
17.您以往所从事的软件测试工作中,是否使用了一些工具来进行软件缺陷(Bug)的管理?
如果有,请结合该工具描述软件缺陷(Bug)跟踪管理的流程。
18.您以往是否曾经从事过单元测试和集成测试?
如果有,请谈一下这些工作的实际开展情况。
19.您如何看待软件过程改进?
在您曾经工作过的企业中,是否有一些需要改进的东西呢?
您期望的理想的测试人员的工作环境是怎样的?
20.您以往工作过的企业中,是否开展了软件配置管理工作?
您能否描述一下这项工作的开展情况和您对这项工作的认识?
21.您是否熟悉一些主流的软件工程方法论和思想,如RUP、CMM、CMMI、XP、PSP、TSP。
如果熟悉,您是否可以谈一下对这些方法论和思想的认识?
22.您认为在测试人员同开发人员的沟通过程中,如何提高沟通的效率和改善沟通的效果?
维持测试人员同开发团队中其他成员良好的人际关系的关键是什么?
23.在您以往的测试工作中,最让您感到不满意或者不堪回首的事情是什么?
您是如何来对待这些事情的?
24.在即将完成这次笔试前,您是否愿意谈一些自己在以往的学习和工作中获得的工作经验和心得体会?
(可以包括软件测试、过程改进、软件开发或者与此无关的其他方面)
笔试题
一、判断题(每题1分,12分,正确的√,错误的╳)
1.软件测试的目的是尽可能多的找出软件的缺陷。
()
2.Beta测试是验收测试的一种。
()
3.验收测试是由最终用户来实施的。
()
4.项目立项前测试人员不需要提交任何工件。
()
5.单元测试能发现约80%的软件缺陷。
()
6.代码评审是检查源代码是否达到模块设计的要求。
()
7.自底向上集成需要测试员编写驱动程序。
()
8.负载测试是验证要检验的系统的能力最高能达到什么程度。
()
9.测试人员要坚持原则,缺陷未修复完坚决不予通过。
()
10.代码评审员一般由测试员担任。
()
11.我们可以人为的使得软件不存在配置问题。
()
12.集成测试计划在需求分析阶段末提交。
()
二、不定项选择题(每题2分,10分)
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.项目阶段成果已经被基线化
三、填空题(每空1分,24分)
1.软件验收测试包括、、三种类型。
2.系统测试的策略有功能测试、、、、易用性测
试、、、、、、、、
、、等15种方法。
3.设计系统测试计划需要参考的项目文档有、和迭代计划。
4.对面向过程的系统采用的集成策略有、两种。
5.通过画因果图来写测试用例的步骤为、、、及把因果图转
换为状态图共五个步骤。
四、简答题(共37分)
1.阶段评审与同行评审的区别。
(4分)
2.什么是软件测试。
(3分)
3.简述集成测试的过程。
(5分)
4.怎样做好文档测试?
(4分)
5.白盒测试有那几种方法?
(6分)
6.系统测试计划是否需要同行评审,为什么?
(4分)
7.Alpha测试与beta测试的区别。
(4分)
8.比较负载测试、容量测试和强度测试的区别。
(6分)
9.测试结束的标准是什么?
(3分)
一、填空题:
(每一空格2分,共60分)
1、软件实施活动的输出工件有、、、。
2、代码评审主要做、、、工作。
3、软件实施活动中集成员的职责是、、、。
4、验证与确认软件实施活动主要有、代码评审、、、、SQA
验证。
5、表明测试已经结束、、、。
6、软件测试的目的是、、、。
7、软件测试主要分为、、、四类测试。
8、软件测试活动有制定测试计划、、、、、、测
试评估、测试结束八个步骤。
9、软件测试活动的输出工件有_、、、、。
10、软件测试角色有、、、。
二、不定项选择题:
(每题3分,共15分)
1、软件实施活动的进入准则是()
A、需求工件已经被基线化
B、详细设计工件已经被基线化
C、构架工件已经被基线化
D、项目阶段成果已经被基线化
2、下面角色不属于集成计划评审的是()
A、配置经理
B、项目经理
C、测试员
D、编码员
3、软件测试设计活动主要有()
A、工作量分析
B、确定并说明测试用例
C、确立并结构化测试过程
D、复审并评估测试覆盖
4、不属于集成测试步骤的是()
A、制定集成计划
B、执行集成测试
C、记录集成测试结果
D、回归测试
5、属于软件测试活动的输入工件的是()
A、软件工作版本
B、可测试性报告
C、软件需求工件
D、软件项目计划
三、问答题:
(共25分)
1、项目的集中管理在软件公司的哪一个层面?
(2分)
2、请描述软件测试活动的生命周期。
(8分)
3、什么是测试评估,测试评估的范围是什么?
(5分)
4、阐述工作版本的定义。
(2分)
5、请画出软件测试活动的流程图。
(8分)
一、判断题(每题2分,正确的“√”,错误的“╳”)
1、好的测试员不懈追求完美。
()
2、测试程序仅仅按预期方式运行就行了。
()
3、不存在质量很高但可靠性很差的产品。
()
4、软件测试员可以对产品说明书进行白盒测试。
()
5、静态白盒测试可以找出遗漏之处和问题。
()
6、总是首先设计白盒测试用例。
()
7、可以发布具有配置缺陷的软件产品。
()
8、所有软件必须进行某种程度的兼容性测试。
()
9、所有软件都有一个用户界面,因此必须测试易用性。
()
10、测试组负责软件质量。
()
二、简答题
1、软件的缺陷等级应如何划分?
(3分)
2、如果能够执行完美的黑盒测试,还需要进行白盒测试吗?
为什么?
(5分)
3、你认为一个优秀的测试工程师应该具备哪些素质?
(3分)
4、产品测试到什么时候就算是足够了?
(2分)
5、测试计划的目的是什么?
(2分)
6、为什么要进行软件测试?
软件测试的目的是什么?
(5分)
7、软件测试应该划分几个阶段?
简述各个阶段应重点测试的点?
各个阶段的含义?
(5分)
8、如何做一名合格的测试人员?
(3分)
9、针对缺陷采取怎样的管理措施?
(5分)
三、专业词语解释(每题2分)
α测试:
β测试:
驱动模块:
桩模块:
白盒测试:
静态测试:
四、选择题(每题2分)
1.下面哪些属于动态分析()
A.代码覆盖率
B.模块功能检查
C.系统压力测试
D.程序数据流分析
2.下面哪些属于静态分析()
A、代码规则检查
B、序结构分析
C、序复杂度分析
D、内存泄漏
五、设计题(10分)
在三角形计算中,要求三角型的三个边长:
A、B和C。
当三边不可能构成三角形时提示错误,可构成三角
形时计算三角形周长。
若是等腰三角形打印“等腰三角形”,若是等边三角形,则提示“等边三角形”。
画出程
序流程图、控制流程图、找出基本测试路径,对此设计一个测试用例。
六、论述题
1、试叙述对一个软件项目测试的全过程。
(10分)
2、简述你对测试工作的认识过程、在以后的工作的一些建议。
(6分)
3、述静态测试和动态测试的区别?
(5分)
1.什么是软件测试,以及软件测试的意义?
2.什么是软件测试静态分析,软件测试动态分析,
3.下面那些属于静态分析()
A、编码规则检查
B、程序结构分析
C、程序复杂度分析
D、内存泄漏
4.下面那些属于动态分析()
A、代码覆盖率
B、模块功能检查
C、系统压力测试
D、程序数据流分析
5.从测试技术角度,正确的选择是(),给出各自的含义?
A、静态测试
B、黑盒测试
C、动态测试
D、白盒测试
6.从测试阶段角度,测试正确的顺序是(),同时给出所选择的正确策略含义和被测对象是什么?
A、单元测试
B、集成测试
C、系统测试
D、确认测试
7.针对缺陷采取怎样的管理措施?
8.在测试生命周期,测试过程分为几个阶段,以及各个阶段的含义?
9.简要写出自己在理解的基础质上所认为引入测试管理的意义
10.在三角形计算中,要求三角型的三个边长:
A、B和C。
当三边不可能构成三角形时提示错误,
可构成三角形时计算三角形周长。
若是等腰三角形打印“等腰三角形”,若是等边三角形,则提示“等
边三角形”。
画出程序流程图、控制流程图、计算圈复杂度V(g),找出基本测试路径
软件测试工程师笔试试题答案
我认为那些面试题不同的人会有不同的答案
下面是部分答案
一、判断题(每题1分,12分,正确的√,错误的╳)
1.软件测试的目的是尽可能多的找出软件的缺陷。
()软件测试的目的就是为了发现软件中的缺陷,从这个意义上面说上面的这个论断是正确的。
不少人会认为软件测试可以保证软件的质量,其实这个观点是错误,测试只是软件质量控制中的一个角色,其活动并不能达成软件质量保证的效果。
所以不要认为一个公司里面如果有了软件测试人员,产品的质量就会好起来。
2.Beta测试是验收测试的一种。
()Beat测试和验收测试是两种不同的测试。
验收测试的目的是为了以发现”未实现的需求”为目的,以评估”适合使用”为目标,该类测试的不是以发现缺陷为主要目的。
beta测试是一模拟真实的使用环境从而发现缺陷的一种测试。
所以两者之间的是非包容关系。
3.验收测试是由最终用户来实施的。
()上面说到了验收测试的目的和目标,所以验收测试也可是是软件生产的企业内部人员来实施。
例如产品经理。
当软件以项目的形式出现,那么验收测试由最终用户来实施的情况是比较长见的。
但是对于产品形式的软件,生产企业内部的验收测试会更多。
4.项目立项前测试人员不需要提交任何工件。
()应该说这道题目没有明确的答案,在项目立项前测试人员是不是要把一些准备工作以工件的形式给记录下来是完全取决于该企业的软件开发过程的要求。
同时不同企业,立项前要达成的一些必要条件也是大相径庭的。
应该说这一题目出的不是很好,如果你是出题人这家企业的测试工程师,那么就应该有一个明确的答案。
5.单元测试能发现约80%的软件缺陷。
()同样这一题目也没有标准答案。
因为该数据的来源和其统计的方法,样本都没有一个工业标准。
这样出来的数据同样不具有权威性。
这里我可以说一个简单的例子,在用ASP,php这类脚本语言开发网页的时候是根本没有复杂的单元测试。
那么这样的数字应用在网站开发上面是否有意义,还是值得商榷的。
所以这道题目出的不好,没有明确的答案
6.代码评审是检查源代码是否达到模块设计的要求。
()代码审查是一种静态技术,从这个意义上说代码复查是需要和其他的一些动态测试技术配合才能检查代码是否符合设计的要求
7.自底向上集成需要测试员编写驱动程序。
()这道题目大家看下top-down和down-top的集成测试示意图就能得出明确的答案。
这里需要了解的是什么是驱动测试程序,什么是桩程序。
如果集成组件数量众多,多关系层次,那么不论是什么类型的集成测试。
驱动程序和桩程序都是需要开发的。
8.负载测试是验证要检验的系统的能力最高能达到什么程度。
()关于负载测试和压力测试在论坛中的帖子中有详细的解释,大家可以去看一下就能得出正确的答案
9.测试人员要坚持原则,缺陷未修复完坚决不予通过。
()同样,这一题没有正确的答案。
缺陷是否修复是需要听取测试人员的意见,但测试人员的意见非决定性。
所以还是要看一个企业赋予测试人员有多大的权力。
10.代码评审员一般由测试员担任。
()如果测试员有这个水平,那么当然是可以参加的。
不过大多数的企业不会让普通的测试人员参与代码的评审。
11.我们可以人为的使得软件不存在配置问题。
()首先大家先搞清楚什么是配置管理什么是软件配置,从这道题目中看不出出题人想问的是关键工程中的配置管理还是单纯的软件配置。
但是可以肯定的是不论是何种情况,答案均是否定的。
12.集成测试计划在需求分析阶段末提交。
()集成测试计划在开发人员完成软件集成计划之后就可以开始进行了。
所以在需求分析阶段之后提交是不现实的事情,应该在软件的设计阶段后,编码前。
二、不定项选择题(每题2分,10分)
1.软件验收测试的合格通过准则是:
()
A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
B.所有测试项没有残余一级、二级和一
C.立项审批表、需求分析文档、设计文档和编码实现一致。
D.验收测试工件齐全。
回答这道题,你必须是这家企业的员工。
前面说到了验收测试的目的和目标,一个是需求必须实现,二是证明软件是适合使用的。
这样能满足这两个通用标准就可以了。
当然有些软件企业会对验收测试标准做一些调整。
2.软件测试计划评审会需要哪些人员参加?
()
A.项目经理
B.SQA负责人
C.配置负责人
D.测试组上面的4种角色都需要参与
3.下列关于alpha测试的描述中正确的是:
()
A.alpha测试需要用户代表参加
B.alpha测试不需要用户代表参加
C.alpha测试是系统测试的一种
D.alpha测试是验收测试的一种首先大家需要知道alpha测试是系统级别的测试,该测试是在一个受控的环境中进行的。
用户需要直接参与进来。
所以答案应该是AD
4.测试设计员的职责有:
()
A.制定测试计划
B.设计测试用例
C.设计测试过程、脚本
D.评估测试活动合理的答案的是BC,同时要看软件企业对该类人员的职责是如何定义。
5.软件实施活动的进入准则是:
()
A.需求工件已经被基线化
B.详细设计工件已经被基线化
C.构架工件已经被基线化
D.项目阶段成果已经被基线化先要了解一下什么是基线。
这个是软件配置管理中一个重要的概念。
工作产品必须纳入到一定的基线里面。
所以选择ABC是必定的,至于是否选择D要看这家企业自身的标准了
填空题(每空1分,24分)
1.软件验收测试包括___、___、____三种类型。
软件验收测试包括正式验收测试、alpha测试、beta测试三种测试。
2.系统测试的策略有功能测试、、、、易用性测试、、、、、、、、、、等15种方法。
系统测试的策略有很多种的,我知道的有性能测试、负载测试、强度测试、易用性测试、安全测试、配置测试、安装测试、文档测试、故障恢复测试、用户界面测试、恢复测试、分布测试、可用性测试。
。
。
3.设计系统测试计划需要参考的项目文档有、和迭代计划。
设计系统测试计划需要参考的项目文档有软件测试计划、软件需求工件、和迭代计划。
4.对面向过程的系统采用的集成策略有___、___两种。
5.通过画因果图来写测试用例的步骤为___、___、___、___及把因果图转换为状态图共五个步骤。
利用因果图生成测试用例的基本步骤是:
§分析软件规格说明描述中,哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。
§分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系?
根据这些关系,画出因果图。
§由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。
为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件。
§把因果图转换成判定表。
§把判定表的每一列拿出来作为依据,设计测试用例。