
很多人对软件测试都有这样一种认知:测试门槛低,通过几个月的自学,或短期的培训,就能找到高薪的工作。
但是软件测试,绝非简单的“点点点”。
根据需求「编写测试用例」,是作为测试人员应该具备的基本能力。
很遗憾,追求速成学习的人员,并不具备这样的能力,不仅不会分析需求文档,连测试用例是什么都不知道,更别说编写测试用例了。
又到了一年一度的“金三银四”求职旺季,很多人在面试的时候,会有些紧张,不知道怎么回答面试官的问题。
这次准备了几道「软件测试常见的面试题」,希望能够对大家有帮助。
话不多说,快来看看吧~
01.什么是软件测试,进行软件测试的目的/h2>
软件测试是通过需求分析和测试用例,利用手工跟自动化两种手段,来验证软件预期结果与实际结果是否一致的工作。简单地说,就是找bug。
目的:在最短时间内找出尽可能多的软件缺陷。
02.软件测试从什么时候开始,为什么br>
软件测试越早展开越好,一般从需要阶段就要进行软件测试。软件测试不仅是测试功能,对于需求文档一类的也要进行测试。越早找出bug,就会减少后续开发人员修改程序的次数,并且可以降低成本,如果等整个软件开发的差不多了发现一个致命的错误的话,那就需要花费很多时间和人力进行重新修改,而在一开始就发现的话,就不会出现这种情况了:)
03.你熟悉的软件测试类型有哪些br>
测试类型有功能测试、性能测试和界面测试。
功能测试,也叫作黑盒测试,在测试工作中占有较大的比例,把测试对象看作一个黑盒子,只需要测试软件产品的功能,不需要测试软件产品的内部结构和处理过程。采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试:确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试:通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。
界面测试,界面是软件与用户交互的最直接的层,界面的好坏决定用户对软件的第一印象。设计良好的界面能够引导用户自己完成相应的操作,起到向导的作用。同时界面如同人的面孔,具有吸引用户的直接优势。设计合理的界面能给用户带来轻松愉悦的感受和成功的感觉,相反由于界面设计的失败,让用户有挫败感,再实用强大的功能都可能在用户的畏惧与放弃中付诸东流。
04.所有的软件缺陷都能修复吗需要修复吗br>
从理论上来说所有的缺陷都是可以修复的,但是并不是所有的缺陷都要修复。
一些对于软件没有影响的、不影响使用的缺陷我们可以不修复。因为修复些细小的缺陷需要花费很多时间。项目上面可能会因为时间问题而先忽略这些小缺陷。
05.给你一个 站,你如何进行测试br>
①、查找需求说明、 站设计等相关文档,分析测试需求。
②、制定测试计划,确定测试范围和测试策略,一般包括以下几个部分:
功能性测试、界面测试、性能测试、数据库测试、安全性测试、兼容性测试。
③、设计测试用例:
功能性测试可以包括,但不限于以下几个方面:
a、链接测试。链接是否正确跳转,是否存在空页面和无效页面,是否有不正确的出错信息返回等。提交功能的测试。
b、多媒体元素是否可以正确加载和显示。多语言支持是否能够正确显示选择的语言等。
界面测试可以包括但不限于一下几个方面:
a、页面是否风格统一,美观
b、页面布局是否合理,重点内容和热点内容是否突出
c、控件是否正常使用
d、对于必须但为安装的空间,是否提供自动下载并安装的功能
e、文字检查
06.你在测试中发现了一个bug,但是开发经理认为这不是一个bug,你应该怎样解决br>
首先把自己的见解告诉开发人员。在同开发人员沟通到底是不是bug,但是如果开发人员还是认为不是bug的话,就把这个问题提到项目经理处,同时附上自己的见解。由项目经理决定是否为bug。
07.测试人员在软件开发过程中的任务是什么br>
①、尽可能早的找出系统中的Bug;
②、避免软件开发过程中缺陷的出现;
③、衡量软件的品质,保证系统的质量;
④、关注用户的需求,并保证系统符合用户需求。
总的目标是:确保软件的质量。
08.你的测试职业发展路线是什么br>
测试经验越多,测试能力越高。所以我的职业发展是需要时间积累的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年积累测试经验,按如何做好测试工程师的要点去要求自己,不断更新自己改正自己,做好测试任务。
09.一个测试工程师应该具备哪些素质和技能br>
①、掌握基本的测试基础理论
②、本着找出软件存在的问题的态度进行测试,不要以挑刺的形象出现
③、可熟练阅读需求规格说明书等文档
④、以用户的观点看问题
⑤、有强烈的质量意识
⑥、细心和责任心
⑦、良好的有效的沟通方式(与开发人员及客户)8.具有以往的测试经验能够及时准确的判断出高危险区在何处
10.你为什么能够做测试这一行br>
虽然我的测试技术还不是很成熟,但是我觉得,我还是可以胜任软件测试这个工作的,因为做软件测试不仅是要求技术好,还有有一定的沟通能力,耐心、细心等外在因素。综合起来看,我认为我是胜任这个工作的。
11.说一下你们的测试流程
没有做过项目的直接介绍下v模型(老师上课肯定有讲过),有经验的直接从接到项目/单子后讲自己如何一步步实施测试的。
例如你可以回答这样的流程:
①、软件开发完成以后,就会把需求规格说明书、软件程序和软件源代码发过来;
②、项目经理出测试方案(要使用什么样的测试方法、测试策略)安排测试计划(测试人员、资源、进度的安排,测试的范围和完成的目标);
③、测试人员编写和执行测试用例;
④、提交缺陷并且进行跟踪;
⑤、编写测试 告。
12.怎样看待加班问题br>
加班的话我没有太多意见,但是我还是觉得如果能够合理安排时间的话,不会有太多时候加班的。
13.您所熟悉的测试用例设计方法都有哪些分别以具体的例子来说明这些方法在测试用例设计工作中的应用。
有黑盒和白盒两种测试种类,黑盒有等价类划分法,边界分析法,因果图法和错误猜测法。白盒有逻辑覆盖法,循环测试路径选择,基本路径测试。
例子:在一次输入多个条件的完整性查询中。利用等价类划分法则和边界分析法则,首先利用等价划分法,可以一个或多个结果是OK的测试用例,然后确认多个NG的测试用例,然后利用边界值分析法,可以对结果分别是OK和NG的测试用例进行扩展和补充。
14.你对测试最大的兴趣在哪里什么br>
最大的兴趣就是具有挑战性。
因为我并不知道哪里会出现bug,在找到一个bug后会很高兴。并且测试需要很强的耐心和细心。我可以很容易的找到一些细节问题。
15.什么是系统瓶颈br>
系统瓶颈就是软件在一定的并发量、访问量下无法达到用户的需求。
比如说用户需要在10s内完成一个访问,但是每一次都要12s才能完成,这个就是性能瓶颈,有可能是程序本身的问题,也有可能和操作系统、软件相关。
16.您在以往的测试工作中都曾经具体从事过哪些工作中最擅长哪部分工作br>
我一般都是做的Web测试,搭建测试环境,对于一个程序进行集成测试,系统测试,回归测试等。还要编写测试用例以及一些文档,用户使用手册,功能测试文档等等。最擅长的是功能测试。
17.什么是兼容性测试br>
兼容性测试是检查软件在不同软件平台,硬件平台上是否可以正常运行的测试。主要查看软件在不同操作系统、浏览器、数据库中是否运行正常。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!