200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 网易校招测试开发工程师面经

网易校招测试开发工程师面经

时间:2022-12-19 20:41:58

相关推荐

网易校招测试开发工程师面经

事先声明,我是21届的。糊里糊涂投了简历,糊里糊涂做了笔试题,糊里糊涂一面二面总监面。。当然我在一面的时候就跟面试官说了我是21届的,人丝毫没嫌弃还面完了。技术过了就是过了,没有嫌弃年级,感谢网易!虽然最终却是因为21届没有发校招offer,但是给了实习转正offer。能一路走下去已经很开心了。不忘初心,砥砺前行。

首先写一下我面试中所见所闻所想吧:

对于校招测试开发工程师(sp级别)可能需要达到的要求:

1、大厂实习经历(QA不像是RD,不在工作中进步,没地儿真正的有机会进步)

2、linux,越熟练越好

3、MySQL,越熟练越好,懂原理最好

4、做过中大型项目开发

5、基本的编程能力(leetcode easy+ medium- 的水平)

6、测试思想、测试理论、测试实践

7、HTTP协议、TCP/IP协议,三次握手,四次挥手

8、操作系统原理

9、一门传统强势语言(Java等)+一门熟练的脚本语言(python等)

对于个人品质的要求:

不畏强权(面试官有可能会故意跟你唱反调,你要做的不是像一个可怜虫一样被动接受,而是思考发现她说的对不对,不对就怼他(当然要注意方式方法))

有自己的想法(看到团队中不合理之处,要主动跟leader进行交流申请,看看能不能有改进的方法)

吃苦耐劳(这并不是一句空话,工作中别管RD还是QA,一定有大量没什么技术含量的工作,所以不要体现出来不喜欢做没技术含量的工作)

有一定的进取心(不要眼高手低,要踏踏实实凭自己的努力去做)

大大方方,不卑不亢(求职是个双向的过程,没必要自己姿态摆的特别低)

首先,网易在中关村软件园西南角附近,周围是百度、新浪等老牌大厂。是巧克力色的大楼,显得特别的新,干净。(反正个人觉得比百度要好看)。从滴滴新澄海大厦过去坐车20分钟左右,我吃撑了,而且到早了(坑爹的高德地图说坐车40分,我TM坐车10分,走路10分就到了),所以绕着网易走了好几圈消食。

进去之后前台领胸贴,微信扫码签到。微信直接就通知什么时候去什么地方面试,特别方便。(但是并没有标明A、B的区别,找了很久才找到面试的地方)

一面:耗时1h

自我介绍,讲项目,问项目,主要是问项目为什么要做?耗时多久?用了什么技术?有什么效果?遇到了什么困难?

写SQL语句: 查询所有重复的邮箱。就是说给你一个邮箱表,邮箱字段值有重复的有没有重复的,输出所有的重复表。我用的聚合函数+HAving写的,应该是写对了,面试官很满意。

select Email from Emailtable group by Email having count(Email) >= 2;

然后来说了说数据库索引,为什么要有索引?什么情况下用索引?什么情况下不能用索引?

索引为什么快?索引用的什么数据结构?

HTTP协议讲一下你知道的知识?

短连接、长连接、无状态、cookie、session、post、get等。

如果抓到了用户的一个HTTP的请求,能做些什么?(截取cookie,用用户的身份做一些事情)

给你一个FTP服务器,你要怎么测试呢?

首先确定FTP服务器的功能:找到RD要到FTP服务器的各种参数,比如允许上传的文件后缀、文件大小范围。然后就进行功能测试,比如上传正确的文件名,上传错误的文件名看是否会被拦截,上传超出文件范围的文件看是否会拦截。然后进行安全性测试,比如我恶意给文件名带了双后缀,或者直接穿个小马进去,用大马连接,用00截断这样的手段来搞一些上传漏洞的事情,或者是未经授权匿名上传。 然后进行性能测试,比如多用户同时上传,看下性能(用代码实现)。

面试官问:那你怎么知道传上去成功了还是失败了呢?

答:上传之后会有response信息,直接对response进行一个校验即可。

问:你用什么办法进行校验呢?

答:可以自己写代码校验,也可以用python的unittest模块的断言。

问:如果说你用代码进行校验,传了个100G的大文件去了FTP服务器,他没有给你任何反馈信息,程序就卡在那里了。此时你怎么办?

答:可能的解决方案1,调整代码结构,让它最后跑,甚至是下班之后还在跑。2,抓包看下是我这边没有继续上传还是对方出了问题。3,设置timeout超时时间,不要影响别的代码。4,管RD要到服务器指标,如果100G超过了对方的设定阈值,则与RD沟通看是否是代码没有对文件大小进行校验,随后协商进行处理。

好的,你数据结构和算法还可以对吧,来做道题。(全英文的,面试官怕我看不懂还特地给我翻译了一遍= = 我想说我虽然英语差,但是好歹也是正儿八经的211硕士。。题目还是能看明白的)

问题描述:

有两个字符串str1和str2,str1的排列组合如果在str2中,返回true,否则返回false。

样例:

st1 = 'aba' str2 = 'dasfsdgbsebaabb'True

先告诉面试官思路,把st1计算一下长度,暂存起来。读到一个dict中,对其进行计数,比如在样例中a记2,b记1. 然后遍历str2,如果有在dict中的元素,就其进行计数,计数的同时降低已经匹配过的值。比如第二个位置上的a被匹配过后在dict中的value变为1,然后如果值变为0之后,删掉这个k-v对。直到count等于str1的长度return true,不然就重置count,重新复制一份原始的dict,重新计数。

写完代码,面试官让我再给他讲一下,又说了一遍,然后面试官提出来个疑问,

你是不是想复杂了呢? 为什么为0的时候要删掉这个key-value?直接减成-1不得了?-1的不能用不得了?

我思考了一下,告诉面试官:第一,我的代码中,dict的初始值肯定都是个正数,所以我在遍历时可以放心大胆的先减去1,然后判断其是不是等于0,如果像你说的那样设置为-1,那就始终要判断value是不是大于等于0,跟我的代码逻辑是一样的,而且我删掉了那个kv,如果下一轮失配,则直接重置了,如果改成-1的逻辑,首先你要判断减掉的时候是不是value大于0,跟我的逻辑复杂度是一样的,而且写起来我的代码更符合人类思维一点。(然后面试官非常满意)

linux熟悉嘛? 说说怎么查看使用内存最高的进程?

我答:top,top之后要按个啥键我给忘了。。

面试官对于我知道top勉强满意,按啥键忘了并没有深究。

现在补充一下:

内存最多的进程:

ps -aux | sort -k4nr | head -n 10#或者是top 后,按shift + m

CPU最多的进程:

ps -aux | sort -k3nr | head -n 10# 或者是top后按shift + p

sort -k的目的是指定第几列哈。

为什么不用top交给sort进行处理呢?

这是因为top是动态的,不间断的,不按Q挂断不了,所以不能这么弄。

我没什么要问的了,你有什么要问我的嘛?

我说:你司对于简历会作一个筛选嘛?比如21届的投简历会不会走到校招环节?

答:这个我不清楚,不过21的简历应该进不来。你是有学弟或者朋友想来?

我说:我就是21的。。最近在准备提前毕业的事情。

面试官目瞪口呆了…不过她还是给我过了。顺利到了二面。

二面:

首先问了问毕业时间的问题。(21届确实雷到了面试官。。)

写了个stack实现括号配对检查的代码。

问了问项目。

问:怎么测试HTTP请求?

从功能、兼容性、性能、安全性来进行考量。

问,我们搜集用户反馈数据的话,肯定是从用户端上传过来,我们进行一系列的清洗、计算、可视化操作,怎么确定这个数据是正确的呢?

这个问题思考了很久,以为首先从用户端传上来之后这个数据还对不对就很难校验。(这里同样也是面试官给我挖的坑),后来面试官说,你不用把精力放在防篡改上,因为这是用户数据,我们基本可以认为上传到我们这边的原始数据肯定就是用户的数据。然后我思路打开了,就开始巴拉巴拉一顿说:首先,我会对清洗代码进行一个CR,看下代码有没有什么问题,然后我会选取几组清洗前和清洗后的数据进行对比,每组中有几十个数据,这个选取是随机的,然后我会去比对,如果这几组都是正确率100%,我就认为这个数据是没问题的,然后对计算代码进行CR,计算肯定是会有一定的阈值的,我会选取等价类划分法和边界值法设计测试用例,因为穷举测试所有用例是不现实的。然后对可视化操作进行CR。

然后面试官表示还算满意,最后给我过了,不过她纠结了一下我21届的给我offer会不会浪费掉这枚offer。最后还是给我过了。

总监面:

其实总监面并不难,主要是对人生目标、性格、可塑性、技术能力、沟通能力、品格进行一个综合的考量。你只要思想正确政治正确,为人处世友好不做作,都没问题。总监纠结了很久要不要给我offer,当然啦最后没给,给了去实习转正的offer。。QAQ 21届毕业确实让总监犯难了。 总监是个特别好的姐姐,我咳嗽特别厉害还去给我倒水。总监给了我一些中肯的建议,她建议我在QA实际测试项目和开发中大型项目上再花点时间,就最好了。

最后谢谢网易,给了我这次校招的机会。知道我是21届的还没有拒绝我,坚持让我面下去了。面试官真的很有素质,网易是一家伟大的公司。(当然我滴也是一家伟大的公司啦233333)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。