软件测试工程师经典面试题汇总

软件测试工程师经典面试题汇总,第1张

1.说说一个缺陷的生命周期

考查点: 测试人员对于缺陷整体生命周期的理解 ,注意面试官用词,有时只需要回答关键节点,有时需要分开阐述。

围绕缺陷提交、缺陷确认、缺陷打开、缺陷修复、缺陷回归、缺陷关闭这几个关键节点回答即可。

2.缺陷的基本类型有哪些?

考查点:需求、数据、逻辑、性能、功能、安全、兼容、变更、易用等

对于工作经历的侧面了解,有时会需要分别举例说明。

3.测试用例的基本要素有哪些?

用例编号、用例类型、用例标题(名称)、前置条件、操作步骤、测试数据、预期结果、实际结果

考察类型形式多样,有些面试官会出场景需求要求现场设计用例,来用于考察应试者的思维缜密性、经验是否丰富以及对需求的理解程度。

4.你如何做用例评审?

考查点:主要考察之前工作流程是否规范,同时对于评审工作的参与度

灵活回答,不同公司不同项目评审流程也有区别。

参考:内部评审(通常由测试组内部人员评审)->正式评审(由参与该项目的产品、开发、测试、项目经理评审)->用例修订->项目经理确认

5.针对微信的聊天窗口设计测试用例

考查点:也经常会换成其他知名网站的一些搜索功能、列表功能、分页功能等等,来考察系统思维能力。

参考:

首先,了解完成业务需求后,转化为测试需求,最终的测试需求一定是跟项目组评审通过的。

开始设计:

冒烟用例:实现最简单的聊天功能(语音、文字形式)

功能业务:

纯文字聊天

语间聊天

表情

组合发送聊天

特殊字符及组合

发送文件

查看聊天记录

截屏功能

视频聊天

实时语音聊天

不同版本间的切换功能

客户化场景分解

异常场景分解

兼容性测试用例:

一般在业务需求中会定义好

在测试需求中可以分解好对应的机型与系统版本,求得最优最小组合,用于兼容性测试的用例。

安全测试用例

性能测试用例

(一般都有独立的测试方案)

回归测试用例:

抽取用例库中的核心用例组合成回归用例 。

6.你发现一个缺陷,但开发人员认为不是问题,你会怎么办?

考察点:沟通表达能力,过往工作流程经验,合作意识、责任意识

此类问题需要首先清楚自己的角色定位,作为一名软件测试人员,此类问题是经常遇到的。如果是执行人员,可以带出原来工作的测试流程,因为缺陷处理也是属于测试流程中的一部分,如开发人员会在缺陷管理系统中备注原因,自己先分析,如果不确定可以找上级测试负责人来一起处理。但如果是管理岗,回答时可以举例说明自己以往遇到的类似问题以及处理方式,更具有说服力。

7.你评估的测试时间是5天,但领导只给三天怎么办?

考察点:沟通表达能力,过往工作冲突的处理方式经验

此类问题如果面试官并未给出具体场景,就一定需要反问把问题的背景描述出来,通过背景分析给出解决冲突的方法。

问题背景如:临时紧急需求、常规需求、经常性压缩时间、客户压缩时间、因自身漏洞导致压缩时间等等

那么回答时就需要应景:排列工作优先级、重新分解当前工作、改变测试策略、团队内分工、外部求助等

8.说说一个项目的测试流程

考察点:以往工作的流程规范性,业务熟悉度

可以参考下文章《测试过程文档模板整理(一)-提测流程》中提到的测试流程,结合目前项目来说明。回答时体现自信、专业、对工作环节的熟悉度

9.黑盒测试用例设计方法有哪些?

等价类划分法、边界值分析法、因果图法、正交实验法、判定表法、错误推测法、随机测试、场景法

10.软件的质量特性有哪些?

可维护性、可扩展性、可测试性、可重用性、可移植性、易理解性

一般在实习生与初级测试工程师中的笔试题也会有很多考查类型,中高级测试工程师更倾向于考察关于质量的影响因素等。

11.缺陷的基本要素有哪些?描述缺陷有哪些注意事项?

缺陷编号、缺陷标题、前置条件、测试数据、操作步骤、预期结果、实际结果、初步定位原因、截图或日志信息(可选)

1、请根据以上规则分析并设计乘客打的费用测试用例,需要体现分析过程及成果

答案请写背面

2、运行Loadrunner场景过程中,监控系统资源使用率如下图(蓝色CPU,红色IO),你可分析出什么结果?

3、下图是运行300VU时的Throughput,确保系统正常运行,需要提供多大带宽?

4、Loaderunner中,参数username有1000个值,user0001,user0002…,参数要求每个Vuser每次循环都取一个唯一的值,如果加载运行50用户,第三个用户第三次循环,username是取哪个值?第四个用户第四次循环,username取哪个值?

5、Linux中,Chmod755 a命令的作用是什么?

6、如何用linux命令查看tomcat实时log输出(假设log文件为:catalina.out)

7、Linux中,suroot和su –root有什么区别

8、是否存在内存瓶颈?实际可使用的内存是多少?

9、OS中,进程和线程有什么区别?

首先,我不急于回答你的问题

你先自己检查一下自己所说的话语中有没有错误,软件测试最关键在于是细心,认真。

其次,你的问题

1.你们是怎样进行回归测试的,一般进行几轮,具体说一下?

2.你们一个项目总工要写多少用例?

3.你知道一个项目代码有多大?

4.你们公司的测试流程?

5.在测试之前,你们干什么?

6.测试计划中,你们项目经理是依据什么给你们分配任务的?

7.你们的测试数据主要来自哪?

8.测试过程中与开发因为BUG发生冲突,你们公司怎样解决?

9.具体讲一下容量测试,强度测试,负载测试的区别?

10.你们公司是怎样进行评审的?

11.你写的项目时间是整个项目从开始到结束的时间,还是只是测试时间?

12.开发在做项目的时候,测试在干嘛?

1、 一般就是先进行冒烟测试,首先确定这些被测试的软件能够运行,然后进行第一轮的测试,测出来问题之后经过项目经理签字确认然后发给每个程序员进行修改,确认回归测试的日期,回归测试时主要测试修改过的部分,同时兼顾不能引发其他方面的问题。一般情况第一轮回归测试完成之后不再出现问题,但是实际过程中会出现第二轮回归测试,如果出现第三轮回归测试,我们将提交问题到质量问题报告中。

2、 测试用例的多少主要要根据项目的大小而定,项目比较大,业务比较复杂的测试用例相对比较多,相反,项目比较小,业务比较简单的测试用例相对比较少一些。不是测试用例多就好,而是测试用例复用性好就说明测试用例选择的好。

3、 根据项目而定。

团队规模

周期长短 10人以上 5人-10人 3-5人 3人以下

6个月以上 一类 一类 二类 三类

2个月-6个月 一类 二类 三类 四类

2个月以下 二类 三类 三类 四类

4、 测试流程:

按照测试计划,项目经理提交测试文档和代码或者可执行文件-测试经理按照测试计划布置测试任务-首先测试工程师进行冒烟测试冒烟测试通过之后进入功能测试-发现bug之后记录bug,并对bug进行管理-一轮测试完毕之后提交项目经理确认-项目经理确认之后进行修改任务分派-程序员进行修改-修改完成之后提交给项目经理确认-之后提交给测试组进行回归测试,如果没有问题测试结束,如果出现问题-重复上面的工作进行第二轮测试。

5、 按要求,在测试之前,开发计划编制完成之后编制测试计划,需求阶段我们应该做系统测试方案和系统测试用例,在设计阶段我们应该编制集成测试方案和集成测试用例,在编码阶段,我们应该编制单元测试方案和单元测试用例。但是实际生活中,我们只编制系统测试计划和系统测试用例。

6、 测试经理给我们分配的任务应该是按照项目开发计划和每一位测试人员的水平及技术特长而定的。

7、 测试数据一般来自于用户需求、概要、详细、数据库设计文档、测试用例或用户实际数据。

8、 依据需求,通过沟通来解决问题,如果需求中不明确则参考设计并听取分析员的意见。

9、 负载测试是一种性能测试,指数据在超负荷环境中运行,程序是否能够承担,响应时间是多少,测试的结果和时间有关系,比如速率、响应时间。

强度测试:在一定的负载条件下,在较长时间跨度内的系统连续运行给系统性能所造成的影响,测试的结果看硬件是否满负荷,比如内存溢出等。

容量测试:确定系统可处理同时在线的最大用户数,测试的结果主要是针对数据库里的数据。

10、 在开发计划、用户需求、需求分析规格说明书、概要设计、详细设计、数据库设计等文档完成之后都要进行评审,这里的评审一般都是同行评审。一般都是以正式会议的形式进行。

11、 项目时间一般是指从项目立项到客户验收汇款这一段时间。不包括维护阶段。

12、 开发做分析设计及编码的时候测试在写测试用例,准备测试数据。

最后,告诉你,我不是做软件测试的,但是希望我所知道的这些能给予你帮助,我还有一份测试文档,不知能否帮助你,需要的话请找我。

希望你能成为这方面的人才专家!


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/446323.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-31
下一篇2023-05-31

发表评论

登录后才能评论

评论列表(0条)

    保存