岗位详细:分部的测试部门,总部在南山,研发部门和行政部门都在南山那块。测试部门的业务是做台式机/Windows/Linux一些系统和硬件的压力测试、性能测试、兼容性测试和可靠性测试这些。实习月薪3500,包住不包吃,公司食堂吃饭有补贴。貌似八人间,打算明天实地考察下生活和工作环境再作考虑。
面了20分钟。人生中的第一次面试就这样结束了。虽然结果还没出但感觉已经过了,只要再和hr说一声就能走流程入职了。打算明天下午去实际环境看看到底如何再决定要不要入职。
开场
自我介绍
HR和技术主管(应该是)负责的面试。不过全程HR只有开头和结尾说话了,其它时间都是旁听。
开局肯定是自我介绍。自我介绍我感觉没答好,就说了以下几点:
- 我是谁,我从哪来,到哪个岗位去
- 参与过的开源项目,但当时有点紧张就只说了一个phpMyAdmin。还可以说个Tor Project。
- 兴趣爱好
兴趣爱好之前应该再说“我擅长xxx”,“我有xxx技能和特长”,起码得表现出自己的特长和技术栈和这个岗位匹配。比如答自己会Linux,掌握基本指令。把简历写的技能那一栏大致说一下就行。
技术问题
测试流程
问了两个技术问题。第一个问的是工作测试流程。这个应该算最常问的了。
我是按测试的完整流程回答的,答的是:
- 分析需求:测试什么功能,测试的目的是什么。
- 测试计划:测试多久。
- 设计测试用例:等价分配和边界值。
- 审查测试用例:把用例提交给产品/开发/负责人做个review。
- 执行用例+找出bug:其实就是测试执行。
- 确认测试:没细说,当时忘了。
- 产品正式上线
- Bug Review:总结开发和测试中碰到的bug和问题。
然后被面试官提醒:”测试文档怎么没提到,在哪一步啊?“但是当时真想不起来,令人感慨。
复盘后总结的答案:
- 分析需求:分析文档和需求说明,确立测试需求。
- 制定测试计划:用什么方法进行测试,测试范围包含哪些功能或模块。
- 设计测试用例:黑白盒。感觉可以细说静态动态黑白盒测试方法包含哪些。
- 静态黑盒:产品文档。
- 动态黑盒:模拟用户进行测试。测试用例可以通过等值分配、边界值、因果图法、场景设计法,错误推测法等进行设计。
- 静态白盒:只看源码不运行程序。
- 动态白盒:代码覆盖率+路径测试。
- 审查用例:把用例提交给产品/开发/负责人进行review。
- 执行用例+找出bug:前面都是需求分析和设计测试用例,这一步开始才是执行测试。
- 测试总结:当时答的时候漏了这点。测试执行完还要提交找出的bug,编写测试报告。
- 线上验证(确认测试):在准生产环境运行项目,看会不会出现bug。
- 产品上线+项目总结:总结项目在开发和测试环境碰到的bug和问题。
这么答下来应该是比较全面的了。还有一种答法是按测试进行的阶段划分,可以在执行测试那块进行补充,感觉能加分:
- 单元测试:把程序划分为多个不可再分的模块。前端的话比如单个按钮。后端的话比如某个特定的API。
- 集成测试:在单元测试的基础上,把不同模块合并成子系统。
- 确认测试:检查开发的项目是否符合项目说明书中提到的功能(静态黑盒),软件配置这些是否正确。
- 系统测试:对整个系统进行测试。比如兼容性测试、性能测试这些。
- 验收测试:其实就是beta测试。从用户的角度进行测试,参与测试的主要是用户和少部分开发人员。
技术问题
处理器的架构
看了操作系统和计网的八股,没想到问了计组的。太久没看这个真的答不出来。
当时问的是“什么是处理器架构”。网上搜了下,复盘之后的答案为:
- 处理器架构指的是处理器的设计模式和实现原理。比如采用的指令集架构、处理器内部的结构、对内存的访问方式等。
有时间还得看看计组的八股。
技术问题
介绍下你的电脑/优化性能是加显卡好还是内存好
都忘了这个问题了,刚刚才突然想起来。主要是太抽象了实在是没想到会问这个。
面试官要我先说一下自己电脑的配置。我说了内存16G,显卡3050,操作系统是windows10。然后面试官问我:“是加内存还是加显卡对性能的提升大”。
我当时的表情真的就是???

懵归懵。但是还是个挺开放的问题。还好高中政治老师教的好——具体问题具体分析。
如果内存够那么加显卡肯定提升比较大,如果内存就几十mb那你加4060都没用。而且还要从具体业务进行分析,比如有的项目比如人工智能或者大数据那些,算力要求高的,或者打游戏用的,那就加显卡。有的项目占内存的那就加内存。反正我当时是这么答的,我也不知道能不能优化回答,先这样吧。
其它问题
优缺点介绍,能不能接受加班,反问面试官
优缺点介绍基本上面试都有的了,还问了我大学和高中的感受到的差别和成长。至于缺点这东西,你就算真有缺点也不能答上去。把优点当缺点答比较好。
比如喜欢钻研技术问题和技术难题=会花费“过量心思”在钻研问题和难题上。加几个限定词就能让优点听起来像缺点,但是这个缺点又没那么严重。只能说语言也是种艺术。
不过优点当时答的也不够好。我答了:
- 学习能力强,接受新知识快。
- 英文好
然后没了。还可以再优化下:
- 学习能力强,上手快。
- 英语好,能流畅阅读英文文档。(我对这点还是很自信的)
- 有技术积累的习惯,这也是我创建个人博客的目的。
- 会通过stack overflow和github解决技术问题,侧面印证英语水平过关。
- 有学习热情,虚心好问。得表现出你有强烈的学习意愿。
不过最好每个优点有具体的实例支撑,不然深挖起来站不住脚。
还问了我如何看待加班,以及对周末加班的看法。感觉回答不能接受加班的基本寄。你都在互联网公司了还不能接受996,那基本没戏。毕竟这一行加班是常态了嘛。
最后就是反问面试官,我问了下工作环境和具体的业务需求。毕竟是第一次面试也不太懂还有啥能问的。反正有问题就直接问,实在不知道问啥就问“工作环境”和“待遇”,感觉最好不要说“没有什么问题了”。