美团22届校招一面(42min)已挂

岗位:测试开发工程师
部门:美团优选

一面(42min)

1、说一下OSI七层模型,每层有什么协议?

  • 最上层是应用层,有HTTPHTTPSFTPSMTP这些协议;
  • 然后是会话层和表示层,这两层我不太了解;
  • 下面是传输层,有TCPUDP
  • 再下面是网络层,有IPICMP
  • 最底端是数据链路层和物理层,这两层我也不太了解,不知道有什么协议。

2、HTTPHTTPS有什么区别?

3、看你简历上有写熟悉gccgit,你说一下平时是怎么用它们的?

gcc可以用来编译C程序,最近我常用它来生成动态库和静态库,比如-share参数可以生成动态库,-L指定动态库目录,-l指定动态库文件名,-I指定头文件目录等;

追问1:静态库与动态库有什么区别?

静态库相当于把所需的目标文件都整合到一起,不需要外部依赖,但是体积较大,动态库可以只将需要的函数接口放进去,体积小,更灵活,但是会有外部依赖。

追问2:你有没有试过把编译好的程序放到其他机器上运行?能运行成功吗?

如果直接拷贝过去的话可能没法直接运行,需要配一些环境变量,比如动态库路径等。

git的话我一般是用git add .命令添加修改的文件,然后用git commit -m "commemt"提交,双引号里面写这次修改的内容,最后用git push origin推送到远端。

追问3:你一般是直接在主分支(master)上进行修改吗?

不是,一般是从主分支拉一个新分支,在新分支上修改代码,最后再合并到主分支。

追问4:如果协同开发,那么肯定会有分支冲突,你是怎么解决冲突的呢?

解决冲突这块不太熟,答得不好,最后我干脆直接说不会解决冲突。。

4、看你简历里写了挺多排序啊,十大排序哈哈,那你说下快排的原理?

经典八股文,我一顿狂背,原理+优化方法,结果说到一半被面试官打断施法了。

追问:快排与归并有什么区别?

  • 归并时间复杂度是稳定的O(logN)而快排是不稳定的,最好O(logN),最坏O(N*N)
  • 归并本身是稳定排序,快排不是。

5、你简历上说了解MySQL,那你写几个增删改查语句吧

我说增是用insert,改是用update,但我平时没怎么写过,都不会写,只会写查的语句,就是select的语句。

追问1:知道多表联查吗?

知道,用left join可以实现多表联查,相当于在多个表的并集里面做查询。

追问2:left joinright join有什么区别?

right join我听过,但是没用过,不知道有什么区别。

6、进程与线程有什么区别?

7、用没用过管道?

用过,程序里面可以用管道pipe进行通信,命令行里的|也是管道。

追问1:用grep和find命令,找/root/目录下所有名字格式类似YYYY-MM-DD.log的文件中包含connection time out的日志。

我说我不会写正则表达式,面试官说可以不写,于是我解答如下:

find /root -name "YYYY-MM-DD.log" | grep "connection time out"

这里被面试官秀了,本来我敲的是对的,然后他质疑说find这个地方写得有问题,我赶紧说哦哦对对应该那样写,然后他又质疑我grep那个地方写得有问题并问我是否知道xargs这个命令,我赶紧说哦哦对对应该用这个命令。然后他说刚才两点他提的都是错的,我写的本来就是对的,为了考验我是否自信。最后他说出这句话他自己都笑了,我也蚌埠住了,直接笑场。

8、为什么想做测开?

我觉得大家在学的时候应该都是往后端开发这个方向去学的,我最开始也是这么想的,但上次实习的时候发现测开其实挺有意思的。那时候我们部门有个很厉害的测开工程师,我每次实现一个功能,自己测了一下觉得没问题了,结果人家一眼就能看出很多破绽。而且做开发的话可能就只对几个技术栈比较熟悉,但是做测开的话,知识面会更广,技术栈也可以下潜很深,如果同时能保持广度和深度的话就太厉害了,所以我也想做测开工程师,往这个方向去发展。

9、既然你对测开那么感兴趣,那你最近有没有主动去了解过测开的一些知识?

有,但我现在时间很有限没有办法系统地去学,只是知道一些简单的概念,比如黑盒测试白盒测试这些概念,我还知道现在很流行用python来写自动化测试框架,但我自己也还没有时间去学phthon

追问:黑盒测试与白盒测试有什么区别?

  • 黑盒就是不去看程序内部,而是只根据输入输出来判断功能是否健全,好处是简单、测试成本低,但是容易遗漏bug;
  • 白盒测试就是去看程序内部的实现,需要一些开发知识,成本较高,比如开发人员的自测就属于白盒测试。

面试官给我说不只是python可以写自动化测试框架,JavaC++也可以,美团自研的自动化测试框架就是用Java来写的,只不过现在python比较流行。

10、设计测试用例

题目:5层楼,包含地下一层,每层两个电梯厢,每个电梯厢有自己的按钮(外面),里面有许多按钮:-1,1,2,3,4,警报铃,开门、关门,请你设计测试用例。

  • 进电梯按指定的楼层是否能到达该楼层,按警报玲会不会响,开门关门是否正常;
  • 电梯里面应该有一套算法,比如你按下电梯,离你楼层较近的那台电梯会来接你;
  • 停电的时候电梯里的应急灯会不会亮,里面通信设备能不能呼救;
  • 承重方面,如果电梯人数超过上限会不会响警报;

追问:如果你第一天测,电梯是正常的,但第二天就出问题了,你会怎么办?

我觉得应该要增加测试的频度。

面试官补充:除了承重以外,还需要测一下电梯门的规格大小,比如你搬东西进去,能搬多大的东西,这也是需要测的一点。

11、问实习项目中遇到最大的困难是什么?

我说项目中要实现一个ssh功能,我觉得比较困难。

追问:你用过telnet吗?telnetssh有什么区别?

没用过telnet,不太清楚。

总结

美团测开感觉还是比较简单的,居然算法题都没写,惊了哈哈。现在面试已经比较从容了,不会的东西就直接说不会,感觉能和面试官谈笑风生,不再过分严肃和紧张。

#面经##校招##美团#
我的面经汇总 文章被收录于专栏

主要整理了自己2022届校招的面经。

全部评论
是滴 最主要就是谈笑风生😝 不管会不会 笑就完事了
1 回复 分享
发布于 2021-08-26 10:51
点赞 回复 分享
发布于 2021-08-26 16:17
老哥有收到二面消息吗?
点赞 回复 分享
发布于 2021-08-26 10:51

相关推荐

05-29 22:40
已编辑
中国传媒大学 数据分析师
秋招竞争激烈,无实习经历的同学可通过以下方式提升竞争力:1. 用高质量项目弥补实习空白技术岗:GitHub开源项目、算法竞赛(如Kaggle)、自研工具/网站,突出技术栈与成果(如“实现XX功能,性能提升XX%”)。非技术岗:运营自媒体账号、策划校园活动、商业分析案例(如用Excel/Python分析某行业数据)。2. 竞赛/证书增加背书技术岗:ACM/蓝桥杯奖项、LeetCode高频题刷透。非技术岗:参加“互联网+”“宝洁商赛”等,或考取SQL/Python证书(如Google数据分析证书)。3. 精准投递+内推突围避开“实习硬门槛”岗位:如部分国企、中小厂对实习要求较低,可作保底。- 内推优先:通过学长学姐、牛客网/LinkedIn联系大厂员工,内推简历直达HR。4. 简历与面试“故事化”包装简历:用数据量化项目成果(如“开发小程序,日活500+”“用户留存率提升20%”)。面试:用STAR法则讲好项目故事,强调“问题-解决-结果”,展现逻辑与执行力。5. 提前批+补录捡漏大厂提前批(7-8月):竞争较小,部分岗位无实习硬性要求。补录阶段(11月后):部分offer被拒后释放名额,主动跟进HR。总结:大厂最终看的是“岗位匹配度”。无实习者需用项目证明能力,通过内推/提前批避开内卷,同时多投中小厂积累面试经验。秋招是持久战,坚持优化策略,机会始终存在!
点赞 评论 收藏
分享
评论
8
21
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务