求职一个月,收割12家offer,想给大家分享一下测试岗,一般会问什么问题?

前言

下面是我根据工作这几年来的面试经验,加上之前收集的资料,整理出来350+道软件测试工程师 常考的面试题。字节跳动、阿里、腾讯、百度、快手、美团等大厂常考的面试题,在文章里面都有 提到。 虽然这篇文章很长,但是绝对值得你点击一下收藏。

文章导读

  • 面试中面试问题的分类
  • 大厂面试真题
  • 书籍分享
  • 经验分享
  • 尾声

第一类问题:

自我介绍(心理学首因效应告诉我们第一印象非常重要)。自我介绍最重要的是能够 在面试官心目中留下一个好的第一感觉。说得更直白一点是让面试官舒服。但是我发现很多人就是 直接简单的介绍了一下过去的经历,但是实际上一方面过去的经历没有很好的让人发现优点。

其实 面试好比相亲,你想说什么不重要,重要地是人家想听什么。比较好的自我介绍套路是这样:“您 好,我叫XXX,很高兴能获得这次面试机会,今天来面试是想证明自己是最合适的人选,另一个方 面是获得您的认可,结合我过去的工作和学习经历,我自信我能符合咱们公司的认可,接下来您看 是我继续介绍我做过的项目,还是您问您关心的问题?”

第二类问题:

项目介绍(项目经验直接决定一个人能否胜任一份工作,企业更应该看重一个人解决问题的思路和具体能力)。 项目介绍部分最重要的思路是应该先整体后局部,介绍整体的时候要有量化的数据(从项目度量的五大维度:规模,包括项目代码规模,需求规模、用例规模,工作量进度,质量和成本),然后是整体的测试流程,然后再是角色与职责,接下来是项目中自己的特色,比如做得最好的是、遇到最大的困难时、最差的是最后是心得体会

第三类问题:

数据库方面知识最基本的要求是数据库记录的增删改查(insert、 delete update、 select) ,表结构的增删改查(create drop alterdescribe 存储过程、触 器等

第四类问题:

linux操作系统相关。最基本的目标是熟悉常见的50个命令,比如find命令(- name、-type、-perm、-user、-group、-ctime、-atime)等,熟悉vi、熟悉linux搭建测试环 境。比如LAMP环境搭建。

第五类问题:

缺陷相关知识。最基本的是缺陷跟踪的流程(流程的基本要素),整体的流程,最好 能在纸上给面试官画出来(尤其是男面试官,从男人好色的角度来看,写得很清楚很重要),缺陷 单的属性,至少能列出20个属性,每个属性的意义,如何描述好缺陷单,缺陷单描述的5C原则,比 如缺陷重现步骤应该complete。

如何描述一个你认为的最经典的Bug单。

第六类问题:

用例相关。最基本的包括用例的格式要素,用例设计工程方法论,每个方法要求(方 法的背景,操作步骤,优缺点、适应范围,与其他用例方法如何配合),在项目中如何利用测试用 例设计工程方法。如何评价、评审测试用例,评审从哪些维度?要设计好测试用例需要哪些方面的 知识结构,比如技术、业务、方法。

第七类问题:

软件测试流程。系统测试相关规范和标准的流程:熟悉产品/项目,需求评审,测试需 求,测试计划,测试方案,测试用例,预测试,第一轮正式测试、第二轮回归测试、第三轮测试, 测试报告,测试总结,测试指南。

第八类问题:

网络相关。最基本的网络基础知识,比如TCP/IP协议。

第九类问题:

测试工具。包括三个大的类型,第一类是性能测试工具、自动化测试工具、测试管理 类工具。最起码的要求是熟悉工具的使用。

第十类问题:

给你一个软件,比如QQ、QQ斗地主,你如何去测试。这类问题基本的思路是,从软 件质量模型、测试工具、测试方法、测试流程、探索式测试等角度先宏观解决,然后再具体微观讲 解用例如何设计等。

第十一类问题:

一个优秀/卓越的软件测试工程师应该具备哪些能力与素质,素质方面包括沟通、五 心工程师、追求完美等。 第十二类问题,最后一个问题,面试官一般会问你还有什么想问或者想要了解的。

总体上来说最重 要的是留下一个好的近因效应,就好比相亲的时候,分手离开的时候,留下好的最后的印象,基本 的思路应该分三种情况,第一种是面试官对你满意,自己也感觉不错的情况下,先表示感谢,然后 积极主动的问题,比如,非常感谢您给的这次机会,但是我还是想问,如果我有下一轮面试,我想 知道知道是什么时候,我应该再做哪些方面的准备。

大厂面试题分享

京东一面 45min

1、自我介绍

2、挖项目

负责的工作,怎么实现?

是做的脱敏工作吗?

效果怎么样?

3、java

基本类型有哪些?(八种 char boolean byte short int long float double)

int 和 integer 有什么区别?(1、integer是int的包装类,int是基本数据类型 2、Integer必须实例化使用 3、Integer存的是一个指针指向一个对象 4、初始化时 int默认值是0,Integer是 null * 空指针)

4、数据库

Mysql是什么数据库?(关系型数据库)

mysql和mongoDB有什么区别?

distinct 、order by、count的用法

count(*) 和 count(1) 的区别

5、计网

京东app点击一个服务所经历的过程?(访问一个服务的过程)

6、测试

为什么做测试开发?

学习了测开的哪些知识?

如果有25个关键词需要关联查询,怎么测试?

写代码过程中有异常(空指针等错误),如何抛出异常?

你为京东app的优缺点?

面试官建议:

1、多去了解软件测试的必备知识,而非教科书式回答,要理解透了再去形容

2、可以多去学一些消息中间件MQ、 JMQ、 redis、队列内存等知识

二面:25min

1、实习过吗?

做了什么?

举个例子讲一下

2、测试

怎么理解测试开发?

你认为你有哪些品质做测试开发?

白盒测试和单元测试有什么区别?

3、网络

为什么要分层?

路由算法有哪些?

IP报文头部内容?

4、java

集合有哪些?( java超常见的问题,每个公司必问)

List是否线程安全?

HR电话面:13min

1、自我介绍

2、项目

做了什么

和项目成员如何沟通

3、工作内容

干了哪些事

4、是否了解部门的测开工作

5、其他offer情况

6、为什么不做算法/开发

经验分享

测试技巧有无数,但归根到底就是本文列举的两个方法。只要方法正确,加上平常掌握的技巧和使用的工具,没有什么BUG是找不到,也没有什么BUG是重现不出来的。

测试是一件非常有技术含量的工作,不是体力活,完全是脑力劳动。所以测试工程师平常一定要注意劳逸结合,只有保持冷静的头脑,才能把软件中的缺陷都找出来。

在前言的测试和开发关系小节中提到“正如一个优秀的开发人员,应该具备一些测试方面的知识和能力;一个优秀的测试人员,同样需要了解一些开发方面的知识。”测试人员在有时间的时候,可以学习一些开发方面的知识,编程语言有很多,开发思想却都是相同的。到了开发知识积累到一定程度之后,如果能对照代码进行测试,针对代码设计测试用例,效果会非常好。以后的白盒测试的时候也用得到这些知识。

如果一个软件的开发和测试过程中,开发人员能从测试人员的角度来进行开发工作,测试人员也能按照开发人员的想法来进行测试,那发布出去的软件,一定会是一个接近完美的软件。让我们通力合作,共同努力吧!!

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

求职一个月,收割12家offer,想给大家分享一下测试岗,一般会问什么问题?_第1张图片

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取 

你可能感兴趣的:(面试,职场和发展,软件测试,测试用例,自动化测试)