准备过程
我自己是本科毕业后在老东家干了两年多,老东家算是一家"小公司"(毕竟这年头没有 BAT 或 TMD 的 title 都不好意思报出身),毕业这两年多我也没有在大厂待过,因此找坑的时候是非常非常虚的。迫于心慌,我好好思考了一阵来给自己打气,当时真正找坑和准备面试的过程大概分为这几个阶段:
- 反思:自己是不是真的要离职,假如不离职,在老东家接下来应该做什么才能继续提升?
- 定位:我在硬性技能(编码、架构)上的长处在哪?我在软技能(沟通,团队)上的长处在哪?这步顺带写了简历
- 寻找平台:哪些平台能同时满足:1、有挑战有上升空间;2、符合我的定位方向;3、团队氛围和老东家一样好(或更好)
- 找人内推:基本都是在 v2 上找的(诚挚感谢各位帮助我内推的大佬) 面试谈 offer
这个过程中,我的方法论是"换位思考"。自己过去也面试过不少人(所以平时公司让我去面试,虽然累点苦点,但也都是积累呀),并且也和 HR 以及放出 HC 的业务方聊过我们希望放什么样的人进来。因此全程都在以面试官的心态来考察自己:
假如我是面试官,我会招怎样的人进来做我的同事?
举几个例子,下面都是我在这个过程中考虑过的问题(当然只是我自己的喜好):
- 对于一个毕业两年多的人,我最希望他有什么特质 ?这个阶段的人其实还是"空杯",我希望他有很强的学习能力和进取心,给自己部门培养出一个超级生产力;
- 什么样的行为会让我"讨厌一份简历" :把每个项目都大写特写,尤其是陈述细节没有重点;罗列框架当能力,用过了一类场景的框架就觉得能解决一类业务诸如此类;
- 面试的时候我会偏向于问哪些问题 ?一是简历上写了"理解"或"精通"的语言与中间件;二是简历上写得比较有趣,又没有完全交代清楚的项目;
每个人都拥有大厂梦,我也不例外,在小公司待久了,感觉人会荒废掉,太轻松,没有压迫感。在众多大厂中,最终选择了字节跳动软件测试岗位,涨薪了30%。"年轻、活力、富有激情"是我听到得最多对它的形容词,所以毅然决然,希望自己能够在这个舞台上展示出自己。
接下来,是极有可能被问到的面试题预测:
1.自我介绍(应该算必问了)
主要考察你的综合素质、专业技能等。自我介绍都是要提前准备的,体现好自己的专业能力和学习能力,不要等到所有的内容都现场想。
2、平时怎么学习技术或专业知识
主要考察你的学习能力,学习的途径都可以说,比如看书,视频,论坛,博客等等。说得具体一点,说服力会直线上升。比如经常看的书有《Google 软件测试之道》《软件测试的艺术》...
3、说说你们公司的测试流程
主要考察是否真正熟悉软件测试,通常需要在标准的软件测试流程上加入一些公司的具体实施情况。
4、频繁更改需求你会怎么处理?线上出问题了你会怎么处理?
主要考察是否重度参与项目发布,以及能否从之前的工作中总结经验和教训。
5、自动化测试的覆盖率
主要考察是否有过自动化测试经验,以及对自动化测试的理解。
如果你没有足够的时间准备,优先这些极有可能问到的面试题是非常有必要的。但是测试相关的面试题非常非常广泛,基本上是不可能穷举的,在一次面试当中你需要准备的知识储备主要分为:
1,简历上提到的技术点,这些会优先问;
2,测试理论相关
3,网络知识相关
4,自动化测试相关
5,操作系统相关
6,编程语言相关
7,其他
下面分别列举一些常见面试题,你可以按照自己的时间安排多看看:
测试理论
1,如何编写测试计划?
2,常见的黑盒测试方法有哪些?并用其中一种方法举例
3,列举一些登录功能的测试点?
4,Web 测试和 app 测试的区别?
5,对于复现率不高的 bug 怎么处理?
6,什么是稳定性测试?
网络相关
1,三次握手和四次挥手是什么?
2,当在浏览器地址栏输入 url 后,会发生什么?
3,网络的 OSI 七层模型
4,GET 请求和 POST 请求的区别
5,session 和 token 的区别
6,session 和 cookie 的区别
7,常见的状态码有哪些?
自动化测试
1,什么是 PO 模式,为什么要使用它?
2,什么项目适合做自动化测试
3,影响 ui 自动化测试脚本运行的稳定性因素有哪些?
4,如果一个元素无法定位,你一般会考虑哪些方面的原因?
5,selenium 的工作原理
操作系统
1,什么是多进程
2,什么是多线程
3,如何终止进程
4,怎么查看 CPU 使用情况?
5,如何查看系统性能?
编程语言(Python)
1,unittest 和 pytest 用起来有什么不同?
2,什么是装饰器
3,实例方法和类方法的区别
4,字典和元组的区别
5,你用什么技术栈做自动化测试
其他
1.说一下,你对性能测试、负载测试、压力测试的理解
2.如何用 jmeter 找出某个接口的最大并发用户数?
3.冒泡排序的原理
4.什么是缓存雪崩?
5.什么是缓存穿透?
6.数据库索引有什么好处?
7.为什么会有分库分表
面试是对所掌握技能一次系统的检查,有的公司会非常全面,有的公司会比较片面,在面试之前,通常需要一段时间有针对性的突击,对自己掌握得不太牢靠的领域系统的复习。
当然,系统全面的知识掌握是最重要的,如果你总是在面试前收集各种各样的面试题,那很有可能是之前相关的技能并没有达到系统掌握的程度,平时就要多注意学习了。
总结:
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。