面试经验总结——测试岗

来源:互联网 发布:太行航空发动机知乎 编辑:程序博客网 时间:2024/05/29 18:19

  虽然还有一年才找工作,但是提前做准备总归是好的。等我把基础性知识学习完以后,在一一总结相关问题的答案。以下是总结别人的测试岗的面试经验,会不定期更新的!

  1、百度面试

  1、能够大概描述出来几种常见的算法的过程,复杂度(排序、查找等)

  2、给你设定几种场景,让你解答:比如给你两部手机,让你站在一百层楼高的地方,假设在第n层手机摔下就会摔破,问你怎样用着两部手机确定这个临界层。

  3、怎样知道一个链表里是否有环的存在,以及确定环的位置。如何确定两个链表是否有相同的部分

  4、网络一些知识,比如http几次握手的情况,ack等包,结束是否只能由服务器段先断开。网络几层,常见网络设备属于哪层?

      参考答案:在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。 第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

  5、测试的几种方法.

  6、给定一个很大文件,内存里放不下,怎样搜索里面是否有需要的关键字,从百度搜索内容,描述一下大致的过程

  7、 C语言 内存分配机制(堆栈的区别,静态存储区)       

  8、 数组指针和指针数组有什么区别 

  9、海量搜索问题 

  比如百度搜索关键字放在一个大文件里,该文件在内存里装不下,用户可以输入关键字,在文件里查找关键字,看关键字是否在该文件里,给一个解决方案。(用Hash方法)           

  10、搜索的原理 :在百度页面输入关键字,得到搜索结果,解释一下这个过程是什么样的

  11、深度搜索算法        单链表 就地 反转 

  12、Linux常见的命令看看(必考) ,linux内核有一定的了解

  14、TCP与UDP的区别

  15、网络设备

  16、socket 套接字

  17、熟悉基本的网络配置及路由器、交换机等网络设备的配置; 

  18、了解TCP/IP协议

  19、测试流程  有几种方式像什么白盒 黑盒   功能测试  性能测试 单元测试

  20、进程与线程的区别 

  21、标准模板库STL 用过的库函数 

  22、做过的有关测试的项目,没有问很细,测试用例是不是自己写的,根据做的项目,设计怎么测试自己的项目

  23、静态函数库、动态函数库 区别 自己做的项目是属于动态的还是静态的

  24、Linux编程怎么样(百度貌似基本上程序都跑在linux上,这个肯定要问到)我直接答的linux常用命令还可以,在linux环境下做过实验,内核不了解

  25、算法题

  大部分是告诉他思路,面试官哥哥会把问题简化,再一点点启发,一点点给问题加条件,要把自己思想解释懂给他听,练练口才啊~还有准备好纸笔,一些代码,不好凭空想象~

  1、在栈中,找出最小值,给出push pop 求最小值min函数(不破坏栈的原始的顺序、用最小的时间)

  2、矩阵中 横排 每行的数据是从小到大的,竖排 每一列也是从小到大 给出一个数用最快的时间查找一个数是否在矩阵中(空间复杂度)

  3、括号匹配 { 【 ( 看左右括号是否匹配 数学规则:{【(

  1)不考虑数学规则

  2)考虑数学规则

 集合数的存储模式,一听就有点懵了,啥是集合数??委婉的告诉她不知道什么是集合数,她就说,存储模式有数组等,我当时很乱,就把我自己理解的,所有在内存中存储模式的,那些,数组、链表、栈、堆、常量区等等,都答了,想想真2。

  之后围绕之前做过的项目问的比较多,比较详细,详细到了一些功能的实现,遇到的问题,怎么解决的等等,根据项目问了数据库的语句,找出数据中最大的前十个,给忘了,就说了C++中的实现方法,还自己引申了一下,答了内存中放的下的数据怎么处理、放不下怎么处理、找出最大的前十个怎么处理,前一万个怎么处理。。。

  也是回答了一些测试的题,测试一个函数,设计测试用例,函数功能:两个已经排好序的数组,合并成为一个有序数组

  做过的白盒测试 实验 自动化测试 有没有写过脚本语言

  问了 测试网络是否连通 ping命令

  Linux 我还是像一面那么答的,这回让我列出了我自己熟悉的linux命令,我就说了一些,她问了一个退出vim怎么退出,就回答了,保存退出,不保存退出的命令等等。

  还问了 编码量最大的项目,最近半年自学的东西,自学的途径等等。 

  我每次最后都要面试我的人给我一些建议,一是有些人给的建议很诚恳,像小米,直接说基础太差,要我好好学习基础;二是,基本上可以知道还有没有机会接着面了~直接问有没有戏,别人不一定会说。

  下面是2015年一个同学的面试经验;

一面:

(1).针对简历问了些问题。

(2).当场写了个在母串中找子串的问题。

(3).写了个在两个数据表中查询某个字段的sql语句。

(4).哪些方法可以提高数据库查询效率。

(5).索引设计的时候要注意什么。【字段长度及索引个数不能太多】

(6).Java中final关键字修饰不同内容时含义。

二面:

(1)针对简历问了些,如阐述MVC设计模式。

(2)ajax的原生过程及jQuery实现。

(3)jquery中常用的选择器。

(4)tcp/ip的作用。

(5)字节码作用,jvm作用。

(6)当场写两个空栈实现队列。

(7)如果一个数据表有成千上万条记录,访问时很慢,有哪些方法可以优化。

(8)对电视机做测试

三面:【一位很nice的姐姐~】

(1)自我介绍及兴趣爱好。

(2)项目中成长最快的地方,有没与成员出现分歧的地方。

(3)了解哪些百度产品。对百度地图做测试。

(4)最近有没感到有压力的事。

(5)了解百度最近的一些大事,如世界大会,百度eye,百度筷搜等等。

(6)最近投了哪些公司,对BAT的看法。

(7)希望工作后能从公司得到什么。

(8)一片区域的网络状态不是很好,要搜集这样的一个反馈,你会怎么做。【具体忘了,反正百度姐姐说用众测平台酱紫。。。】

(9)工作地点及个人情况。

一面

1、自我介绍

2、项目介绍和项目所做的内容

3、HTTP协议中GET和POST的区别。三次握手过程描述一下。

4、单链表的逆置,如何判断单链表是否有环?

5、Linux常用命令,chown是什么?Grep呢?

6、数据库更新语句?group by如何使用?

7、测试用例设计。对新闻下方的评论如何设计测试用例呢?(分为界面部分、交互部分)

8、何时能入职?对加班什么看法?你有什么问题问我?

二面

1、自我介绍

2、项目里你做了什么?(我做的是一个安卓购物商城项目)

3、项目中的东西如何具体实现?

4、有做后台吗?有搭建过环境吗?环境如何配置的?

5、弱网检测,APP性能你如何检测的?(fiddler抓包工具检测)

6、和后台数据库如何进行交互?

7、对购物商城项目做一个整体的测试该如何设计?给5min思考

8、项目开发环境、开发工具、语言

9、介绍一下另外一个项目

10、学语言多快?大概多久上手?

三面

1、自我介绍

2、介绍项目有什么功能?Native和H5如何混合的?(我的安卓商城项目是混合模式,并不完全原生)

3、做过其他什么项目吗?

4、如何取出字符串中的英文字符,在实现中有哪些需要特别注意的?难点在哪?

5、线程进程什么区别?为什么引入线程?他们各自的好处?

6、你有什么问我的?你的优点是什么?

  2、小米面试

   1、c与c++分别是怎样动态分配和释放内存的(小米)

   2、存储位置的区别 栈区、堆区、全局变量、代码区(小米)

     全局变量存储在全局静态存储区,局部变量存在堆栈中

   3、自己写一串代码实现atoi函数的功能,然后根据自己写的代码,写出测试用例,再根据测试用例完善些的代码(小米)

  之前面小米的一个经验:不会的千万不要说你会,我提了下C#,面试官直接问我C#跟C++的区别,勉强说了一些,说着说着,说了一底层接口这个名词,面试官又问我底层接口有哪些,我当时想死的心都有了,于是,自己不熟悉的,在他还没具体细问问题的时候先告诉他会什么,不会什么,例如linux,我直接答的linux常用命令还可以,在linux环境下做过实验,内核不了解,就不会死很惨。

   还有,简历注意下,之前朋友简历上写的 学过的课程中 有一个 linux内核 ,这课确实是学了,百度的面试官问了一个问题 你比较熟悉哪一个linux内核命令,我们来深入探讨一下啊,这个就不好答了~

        2017年8月网易测试面试:

1) 如何测试出网易办公大楼里面人员使用andirol 系统还是 IOS 系统

2)为什么报测试,不报研发岗?

3)如何判断多线程

4)如何判断多进程。

5)linux 系统常见命令

6)你知道多少个操作操作,操作系统共同点是什么?不同点是什么?


原创粉丝点击