我是去年上半年从销售行业转行到测试的,从销售公司辞职之后选择去培训班培训软件测试,经历了四个月左右的培训,在培训班结课前两周就开始投简历了,在结课的时候顺利拿到了offer。在新的公司从事软件测试工作已经将近半年有余,回想当时面试的过程,想分享一些自己的感悟,希望能够对大家有所帮助。
不知道从啥时候开始,互联网行业就开始卷起来了,除了开发岗,测试岗也是卷的不行,不少招聘信息都要求至少本学历、三年软件测试经验,除了功能测试,像接口、自动化、Linux命令都得会,甚至连性能测试都得会,虽然最后去了公司基本只是做功能测试,但是不妨碍面试官问你各方面的知识,不愧是大家所说的“面试造航母,上班拧螺丝”。
我总共面试了四家公司,其中一家自研、三家外包,最开始面试的是杭州的一家外包,做国外银行项目的,因为工作的同事有不少外国朋友,所以需要日常能看英文的文档、能用口语进行交流,因此面试的第一个题目就是用英文做自我介绍,不过这个是在面试前一天人事小姐姐已经告知了,所以自己也准备了一下,好歹算蒙混过关吧,但是背诵下来的人家能听出来。后面问的题目大多就是一些常见的问题了,以下列举一些大家被问的频率较高的问题:
1、常用的Linux命令,分别说出对应命令的用途;
2、说一下get和post的区别?
3、http和https有什么区别?
4、常见的响应状态码有哪几种?分别代表什么含义?
5、做过自动化测试吗?说一下自己当时是怎么做的?
6、自己印象最深刻的bug是什么?
7、常见的设计测试用例的方法有哪些?
8、讲一下近期做过的项目
9、说一下自己对软件测试行业的理解?
10、自己的职业规划
因为之前都有准备过,所以大多数都能回答上来,但是后面问了关于Java和Python的一些并且的知识,有的就不知道怎么回答了,面试官说公司的项目是用Java开发的,所以后期自动化测试会涉及到写Java代码,所以会考察一些编程的知识,问我会不会,我虽然学过但是并不算会,但还是勉强说了会,而且说进了公司可以学。整个面试过程30分钟左右吧,我感觉面试官问问题的节奏很快,总共问的问题大大小小得有20多个,我自己面试完以为能过一面,结果第二天面试被告知不太符合要求,我就把自己面试的时候的录音拿出来听,分析自己回答得不好的地方,自己回听的时候发现当时还是太紧张了,说话语速过快。
第一次面试有了经验,后面我就会在面试之前调整心态,尽量让自己在面试过程中保持一个积极自信的状态,语速基本和平时说话一样,题目也准备的更充分了。第二家面试的是一家深圳的做大数据产品的公司,问的问题大部分和我上面列举的差不多,但是也有专门针对大数据测试的问题,我印象很深的一个问题是三面的时候项目经理问的,他问在做自动化测试的时候,如何构造大量的数据,我当时回答的是用pymysql连接数据库,是用for循环去构造,但是项目经理追问我还有什么其他方法,我左思右想确实没想到,过一会他问我了不了解存储过程,我这才意识到没准备这个知识点,结果也可想而知。我原本觉得这次面试都三面了肯定可以拿offer的,哪知道还是准备不够充分,说实话对这个结果有些沮丧。
第三家面试更无语,一面完之后,外包那边的人事说甲方岗位暂时招满了,需要等他们出新的岗位,我就没指望这家了。
第四家面试也是最后一次面试,顺利了通过了一面,当天面试完就和我确定了第二天二面的时间,第二天二面的时候面试官那边临时有事又推迟了一个小时,我当时只能继续准备我的题目,面试的时候也是问了一些常规问题,然后连着问两个问题,一个我答错了一部分,另一个是边思考回答,也不知道答对没有,反正是来回说了五分钟左右吧。第一个问题是有张学生表,有张成绩表,现在想要查询出语数外三门总成绩大于270分的学生姓名,计算总成绩应该用sum关键字而我说成了是count关键字;第二个问题是有100只小球,外观都一样,其中一只球质量不一样,现在有一台天平,如何用最少的次数找出这个质量不一样的小球,这个当时回答的时候绕了圈子,事后发现并不难。面完之后我觉得应该没戏了,结果第二天告诉我面试过了,然后就谈薪资、入职时间啥的,一个星期之后顺利办理入职。
通过我面试的经验,我认为一定要做好以下几件事情:
1、多熟悉题目,先记牢面试一般会问的共性的问题,然后再准备一些非普遍性的问题,尽量扩大自己的知识面,无论是对面试还是日后工作都有好处。
2、珍惜面试机会。不管是线上还是线下面试,只要自己能参加的都尽量参加,因为经历面试才能检验自己准备是否充分,暴露自己的问题。面试完之后要多反思自己的问题,争取下次做的更好。
3、调整好心态,面试过程中保持积极自信的态度,不要过早考虑结果,过程中发挥好了,结果也不会差,要相信自己。