求职指南网 > 面试试题 >

软件测试面试笔试题含答案

时间: 淑娟 面试试题

软件测试员要同程序员交朋友,向程序员及时反馈具体的程序问题,并与程序员共同探讨。今天小编整理了软件测试面试笔试题含答案供大家参考,一起来看看吧!

软件测试面试笔试题含答案

软件测试面试笔试题含答案

一、判断题

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

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

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

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

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

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

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

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

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

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

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

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

2二、选填

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

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

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

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

D.验收测试工件齐全。

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

A.项目经理

B.SQA负责人

C.配置负责人

D.测试组

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

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

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

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

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

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

A.制定测试计划

B.设计测试用例

C.设计测试过程、脚本

D.评估测试活动

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

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

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

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

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

3三、添空

1.软件验收测试包括:正式验收测试,alpha测试,beta测试。

2.系统测试的策略有:功能测试,性能测试,可靠性测试,负载测试,易用性测试,强度测试,安全测试,配置测试,安装测试,卸载测试,文挡测试,故障恢复测试,界面测试,容量测试,兼容性测试,分布测试,可用性测试,(有的可以合在一起,分开写只要写出15就满分哦)

3.设计系统测试计划需要参考的项目文挡有:软件测试计划,软件需求工件和迭代计划。

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

5.(这题出的有问题哦,详细的5步骤为~~)通过画因果图来写测试用例的步骤为:

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

(2)分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系?根据这些关系,画出因果图。

(3)由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件。

(4)把因果图转换成判定表。

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

4四、简答(资料是搜集整理的,感谢前辈的解题)

1.区别阶段评审的与同行评审

同行评审目的:发现小规模工作产品的错误,只要是找错误;

阶段评审目的:评审模块阶段作品的正确性可行性及完整性

同行评审人数:3-7人人员必须经过同行评审会议的培训,由SQA指导

阶段评审人数:5人左右评审人必须是专家具有系统评审资格

同行评审内容:内容小一般文档< 40页,代码< 500行

阶段评审内容:内容多,主要看重点

同行评审时间:一小部分工作产品完成

阶段评审时间:通常是设置在关键路径的时间点上!

2.什么是软件测试

为了发现程序中的错误而执行程序的过程

3简述集成测试的过程

系统集成测试主要包括以下过程:

1.构建的确认过程。

2.补丁的确认过程。

3.系统集成测试测试组提交过程。

4.测试用例设计过程。

5.测试代码编写过程。

6. Bug的报告过程。

7.每周/每两周的构建过程。

8.点对点的测试过程。

9.组内培训过程。

4怎么做好文档测试

仔细阅读,跟随每个步骤,检查每个图形,尝试每个示例。P142

检查文档的编写是否满足文档编写的目的

内容是否齐全,正确

内容是否完善

标记是否正确

5白盒测试有几种方法

总体上分为静态方法和动态方法两大类。

静态:关键功能是检查软件的表示和描述是否一致,没有冲突或者没有歧义

动态:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。

6系统测试计划是否需要同行审批,为什么

需要,系统测试计划属于项目阶段性关键文档,因此需要评审。

7Alpha测试与beta的区别

Alpha测试在系统开发接近完成时对应用系统的测试;测试后仍然会有少量的设计变更。这种测试一般由最终用户或其它人员完成,不能由程序或测试员完成。由一个或多个用户在开发环境下进行测试。

Beta测试当开发和测试根本完成时所做的测试,最终的错误和问题需要在最终发行前找到。这种测试一般由最终用户或其它人员完成,不能由程序员或测试员完成。由一个或多个用户在用户实际环境下进行而是。

8比较负载测试,容量测试和强度测试的区别。性能测试从使用方便的角度来说,可以分为以下六种:负载测试、压力测试、容量测试、配置测试、基准测试和并发测试。

负载测试:在一定的工作负荷下,系统的负荷及响应时间。在一定的软件、硬件及网络环境下,运行一种或多种业务,在不同虚拟用户数量下,测试服务器指标是否在用户的要求范围内,以此确定系统所能承受的最大用户数,系统响应时间及资源利用率等。

压力测试:在一定的软件、硬件及网络环境下,模拟大量的虚拟用户向服务器产生负载,使服务器的资源处于极限状态下并长时间连续运行,以测试服务器在高负载情况下是否能够稳定工作。

强度测试:在一定的负荷条件下,在较长时间跨度内的系统连续运行给系统性能所造成的影响。

容量测试:容量测试目的是通过测试预先分析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数、数据库记录数等),系统在其极限值状态下没有出现任何软件故障或还能保持主要功能正常运行。容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。容量测试的目的是使系统承受超额的数据容量来发现它是否能够正确处理。容量测试是面向数据的,并且它的目的是显示系统可以处理目标内确定的数据容量。在一定的软件、硬件及网络下,在数据库中构造不同数量级的数据记录,在一定虚拟用户下运行一种或多种业务,以获取不同数量级别的服务器性能指标,以确定数据库的最大容量及最佳容量。

配置测试:在一定软件、硬件及网络环境下,运行一种或多种业务,在一定数量的虚拟用户下,获得不能配置的性能指标。

基准测试:在一定软件、硬件及网络环境下,模拟一定数量的虚拟用户运行一种或多种业务,将测试结果作为基线数据,在系统调优或系统评测的过程中,通过运行相同业务场景比较测试结果,确定调优的结果是否达到预期效果或者为系统的选择提供决策数据。基准测试一般基于配置测试,通过配置测试得到数据,并将这个这个数据作为基准来比较每次调优后性能是否有所改善。

并发测试:通过模拟多个用户并发访问同一个应用、存储过程、数据记录或其他并发操作,测试是否存在死锁、数据错误等故障。

9测试结束的标准是什么?

用例全部测试。

覆盖率达到标准。

缺陷率达到标准。

其他指标达到质量标准

10描述软件测试活动的生命周期?

测试周期分为计划、设计、实现、执行、总结。其中:

计划:对整个测试周期中所有活动进行规划,估计工作量、风险,安排人力物力资源,安排进度等;从宏观上规划整个测试活动。测试包括文档目的,项目背景介绍,输入文档,系统运行环境(网络拓扑图、软硬件配置)、测试内容、资源安排(角色和职责,测试工具)、进度安排、交付件及风险等。

设计:完成测试方案,从技术层面上对测试进行规划;其目的是为整个测试阶段的执行内容及侧罗进行详细说明。测试方案包括文档目的,测试策略等。

实现:进行测试用例和测试规程设计;

执行:根据前期完成的计划、方案、用例、规程等文档,执行测试用例。

总结:记录测试结果,进行测试分析,完成测试报告。

11软件的缺陷等级应如何划分?

A类—严重错误,包括以下各种错误: 1.由于程序所引起的死机,非法退出 2.死循环 3.数据库发生死锁 4.因错误操作导致的程序中断 5.功能错误 6.与数据库连接错误 7.数据通讯错误

B类—较严重错误,包括以下各种错误: 1.程序错误 2.程序接口错误 3.数据库的表、业务规则、缺省值未加完整性等约束条件

C类—一般性错误,包括以下各种错误: 1.操作界面错误(包括数据窗口内列名定义、含义是否一致) 2.打印内容、格式错误 3.简单的输入限制未放在前台进行控制 4.删除操作未给出提示 5.数据库表中有过多的空字段

D类—较小错误,包括以下各种错误: 1.界面不规范 2.辅助说明描述不清楚 3.输入输出不规范 4.长操作未给用户提示 5.提示窗口文字未采用行业术语 6.可输入区域和只读区域没有明显的区分标志

E类—测试建议

常见的软件测试面试题及答案

1白箱测试和黑箱测试是什么?什么是回归测试?

答题建议:简述下概念即可。

2单元测试、集成测试、系统测试的侧重点是什么?

答题建议:围绕重点简单概括即可。如下:单元测试的重点是系统的模块,包括子程序的正确性验证等。集成测试的重点是模块间的衔接以及参数的传递等。系统测试的重点是整个系统的运行以及与其他软件的兼容性。

3设计用例的方法、依据有那些?

答题建议:测试分为白盒测试和黑盒测试,回答时,要注意分开说。白盒测试用例设计有如下方法:基本路径测试、等价类划分、边界值分析、覆盖测试、循环测试、数据流测试、程序插桩测试、变异测试。依据就是详细设计说明书及其代码结构。黑盒测试用例设计方法:基于用户需求的测试、功能图分析方法、等价类划分方法、边界值分析方法、错误推测方法、因果图方法、判定表驱动分析方法、正交实验设计方法。依据是用户需求规格说明书,详细设计说明书。

4一个测试工程师应具备那些素质和技能?

答题建议:一个好的测试工程师,不仅要基础扎实,对自身的性格、责任心都有非常高的要求。具体如下:(1)掌握基本的测试基础理论;(2)本着找出软件存在的问题的态度进行测试,即客观,不要以挑刺形象出现;(3)可熟练阅读需求规格说明书等文档;(4)以用户的观点看待问题;(5)有着强烈的质量意识;(6)细心和责任心;(7)良好的有效的沟通方式(与开发人员及客户);(8)具有以往的测试经验;(9)能够及时准确地判断出高危险区在何处。

5集成测试通常都有那些策略?

答题建议:大致说四点即可,当然说全更好。集成测试有十种策略:(1)大爆炸集成;(2)自顶向下集成;(3)自底向上集成;(4)三明治集成;(5)分层集成;(6)基干集成;(7)基于功能的集成;(8)基于消息的集成;(9)基于风险的集成;(10)基于进度的集成。

面试是求职环节中,最重要的环节。每位面试者在接到面试通知时,都要做好充分的准备。除了对岗位专业知识和能力熟悉掌握的同时,行为举止、面试礼仪、企业信息等方面的了解也是必不可少。

软件测试面试题答案整理

1、你的测试职业发展是什么?

测试经验越多,测试能力越高。所以我的职业发展是需要时间积累的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年积累测试经验,按如何做好测试工程师的要点去要求自己,不断更新自己改正自己,做好测试任务。

2、你认为测试人员需要具备哪些素质

做测试应该要有一定的协调能力,因为测试人员经常要与开发接触处理一些问题,如果处理不好的`话会引起一些冲突,这样的话工作上就会不好做。还有测试人员要有一定的耐心,有的时候做测试很枯燥乏味。除了耐心,测试人员不能放过每一个可能的错误。

3、你为什么能够做测试这一行

虽然我的测试技术还不是很成熟,但是我觉得我还是可以胜任软件测试这个工作的,因为做软件测试不仅是要求技术好,还有有一定的沟通能力,耐心、细心等外在因素。综合起来看我认为我是胜任这个工作的。

4、测试的目的是什么?

测试的目的是找出软件产品中的错误,是软件尽可能的符合用户的要求。当然软件测试是不可能找出全部错误的。

5、测试分为哪几个阶段?

一般来说分为5个阶段:单元测试、集成测试、确认测试、系统测试、验收测试

6、单元测试的测试对象、目的、测试依据、测试方法?

测试对象是模块内部的程序错误,目的是消除局部模块逻辑和功能上的错误和缺陷。测试依据是模块的详细设计,测试方法是采用白盒测试。

7、怎样看待加班问题

加班的话我没有太多意见,但是我还是觉得如果能够合理安排时间的话,不会有太多时候加班的。

8、结合你以前的学习和工作经验,你认为如何做好测试。

根据我以前的工作和学习经验,我认为做好工作首先要有一个良好的沟通,只有沟通无障碍了,才会有好的协作,才会有更好的效率,再一个就是技术一定要过关,做测试要有足够的耐心,和一个良好的工作习惯,不懂的就要问,实时与同事沟通这样的话才能做好测试工作。

9、你为什么选择软件测试行业

因为之前了解软件测试这个行业,觉得他的发展前景很好。

10、根据你以前的工作或学习经验描述一下软件开发、测试过程,由哪些角色负责,你做什么

要有架构师、开发经理、测试经理、程序员、测试员。我在里面主要是负责所分到的模块执行测试用例。

11、根据你的经验说说你对软件测试/质量保证的理解

软件质量保证与测试是根据软件开发阶段的规格说明和程序的内部结构而精心设计的一批测试用例(即输入数据和预期的输出结果),并根据这些测试用例去运行程序,以发现错误的过程。它是对应用程序的各个方面进行测试以检查其功能、语言有效性及其外观排布。

12、软件测试的流程是什么?

需求调查:全面了解系统概况、应用领域、软件开发周期、软件开发环境、开发组织、时间安排、功能需求、性能需求、质量需求及测试要求等。根据系统概况进行项目所需的人员、时间和工作量估计以及项目报价。

制定初步的项目计划。

测试准备:组织测试团队、培训、建立测试和管理环境等。

测试设计:按照测试要求进行每个测试项的测试设计,包括测试用例的设计和测试脚本的开发等。

测试实施:按照测试计划实施测试。

测试评估:根据测试的结果,出具测试评估报告。

13、你对SQA的职责和工作活动(如软件度量)的理解?

SQA就是独立于软件开发的项目组,通过对软件开发过程的监控,来保证软件的开发流程按照指定的CMM规程(如果有相应的CMM规程),对于不符合项及时提出建议和改进方案,必要时可以向高层经理汇报以求问题的解决。通过这样的途径来预防缺陷的引入,从而减少后期软件的维护成本。SQA主要的工作活动包括制定SQA工作计划,参与阶段产物的评审,进行过程质量、功能配置及物理配置的审计等;对项目开发过程中产生的数据进行度量等等。

14、说说你对软件配置管理的理解

项目在开发过程中要用相应的配置管理工具对配置项(包括各个阶段的产物)进行变更控制,配置管理的使用取决于项目规模和复杂性及风险的水平。软件的规模越大,配置管理就越显得重要。还有在配置管理中,有一个很重要的概念,那就是基线,是在一定阶段各个配置项的组合,一个基线就提供了一个正式的标准,随后的工作便基于此标准,并只有经过授权后才能变更这个标准。配置管理工具主要有CC,VSS,CVS,SVN等,我只用过SVN,对其他的工具不是很熟悉。

15、怎样写测试计划和测试用例

简单点,测试计划里应有详细的测试策略和测试方法,合理详尽的资源安排等,至于测试用例,那是依赖于需求(包括功能与非功能需求)是否细化到功能点,是否可测试等。

求职面试礼仪

一、基本礼仪:

一般不应由亲友陪同面试,避免给人留下不成熟的印象。

不要紧张,保持自信和自然的笑容,一方面可以帮助你放松心情,令面试的气氛变得更融洽愉快;另一方面,可令考官认为你充满自信,能面对压力。

二、面试前:

道明来意:告知接待员你是来应聘的,以便作出安排。

应对所有职员保持礼貌,要知道,他们可能成为你的同事。

进门前先敲门,和主考人礼貌地打招呼。

三、面试时:

谈话时要与考官有恰当的眼神接触,给主考官诚恳、认真的印象。

点头不可太急,否则会给人留下不耐烦及想插嘴的印象。

谈话时切忌东张西望,此举有欠缺诚意之嫌。

四、身体语言:

待主考人邀请时才礼貌地坐下,坐的时候要保持笔直。

留意自己的身体语言,要大方得体。跷腿、左摇右摆、双臂交叠胸前、单手或双手托腮都不适宜。

切忌一些缺乏自信的小动作:

男士应避免把弄衣衫、领带及将手插进裤袋内;

女士不宜经常拨弄头发,过分造作。

避免把弄手指或原子笔、眼镜及说话时用手掩嘴。

面试完结离去时,向主考人道谢及说“再见”。

五、回答问题的态度:

态度诚恳,不宜过分客套和谦卑。

不太明白主考人的问题时,应礼貌地请他重复。

陈述自己的长处时,要诚实而不夸张,要视所申请职位的要求,充分表现自己有关的能力和才干。

不懂得回答的问题,不妨坦白承认,给主考人揭穿反而会弄巧成拙。

六、语调:

语调要肯定、正面,表现信心。

尽量避免中、英文夹杂。

尽量少用语气助词,避免给主考人一种用语不清、冗长、不认真及缺乏自信的感觉。

讲错话要补救

在讲错话之后,你亦不要放弃,必须重新振作,继续回答其它问题。

七、其它:

不要打断主考人的话,因为这是非常无礼的行为。

主考人可能会问你一些与职位完全无关的问题,目的在于进一步了解你的思考能力及见识,不要表现出不耐烦或惊讶,以免给用人单位留下一个太计较的印象。

切忌因主考人不赞同你的意见而惊惶失措。部分主考人会故意反对应聘者的意见,以观察他们的反应。

27424