转载:测试工程师面试心得

                 

                           昨晚正式收到支付宝的Offer,提交完离职申请,个人求职过程也就告于段落了。写下这篇文章,但愿个人这些经历能够对正在求职的你能有点启发。 首先,交代下个人背景,这样你们看的时候,就能够有个对比参照。我2010年7月份毕业于南京晓庄学院计算机专业,一所二本学校,常常用大学班主任的气话来调侃“我是一所三流学校里面的二流学生”。在大学期间,成绩通常,没拿过一等,惟一一次有机会拿二等,还由于一门公共课挂科而取消资格,但也扎扎实实学过一些专业课程,好比数据库、网络、C++编程。考研,挂了。大学毕业那会,由于一直在实习,就没正儿八经投过几份简历(如今再看我大学毕业时的简历,真是一塌糊涂),那时候面试过金蝶,失败,富士通的笔试都没过。因此能够讲,我毕业那会基本没有面试经验。java

              后来,没办法就厚脸皮,外包进入实习的那家很牛逼的杀毒软件公司,入行软件测试。这一待就是二十九个月。 在这两年五个月的时间里,开始我对软件测试知之甚少(大学课程中,也就软件工程课中提到过软件测试),利用工做间隙一点点学习:测试理论、Java、Python、设计模式,甚至学习过servlet、JSP,Spring框架……,如今看学的好混乱啊。同时,项目中接触到了自动化测试,就给本身定位要学好自动化测试。学习过程就不细述了,最后通过不断学习,我敢贴在本身简历中的技术背景是这样的: 从八月底开始,到十二月初我差很少投递了80多封求职简历(还不算在51Job中申请的职位),80+的求职邮件,收到了差很少40封邮件反馈。九月中旬,陆陆续续进入面试高峰期,有时,一周面三家单位,投的都是外地公司,因此接到都是四十分钟以上的电话面试。在这三个半月的时间里,我经历着“但愿-失望-又有但愿-再一次失望”这样的煎熬,一次次失败,逼得我不断反思,我问本身问题出在哪?一遍遍修改求职简历,从措辞到排版,到最后甚至计较该用什么字体,字体大小设置多大看起来比较美观。一遍遍独白面试第一部分的“自我介绍”,该如何有条理的把本身这两年所学,所作的事情阐述出来。更为重要的事,我开始整理这两年所学,梳理那些测试理论,编程语言,项目经验。 在决定换工做的时候,本身首先须要弄明白为何要换工做?真的到了非换不可的地步了吗?我不同意轻率地、频繁地换工做,在我看来换一份工做成本仍是蛮大的。但当我在这一个项目两年以上,当平常工做游刃有余,没有压力时,当我不是很清楚地知道我该学些什么的时候,我知道该make change了。linux

           上周周会,看到项目将来半年的WBS,看到那些摊派到我头上的任务,我知道我作了正确的决定。促成我换工做的另外一个缘由是,这两年多来,我一直待在同一个项目组,测试的是IBM的Domino邮件服务器相关,单一的项目经验,对我自身的发展有很大局限。何况在Domino日趋衰败大背景下,我想出去呼吸点互联网公司的气息。 在这里,顺便谈下我对外包的见解。这两年多来,我一直是外包到一家跨国的杀毒软件公司,从事测试。在这里我遇到了我工做中的两位Mentor(Rongting & Paul,固然他们是Regular),从他们那我学到了作事的方法,带着我学习提升,解答了个人不少问题,对我帮助很大。遇到了如今的Leader,他对个人信任、承认,让我能有机会作更多的事,像设计测试用例、自动化测试开发、性能测试等。整个Team氛围都很open, 能有机会参加基本全部的项目会议,参与讨论。一毕业就能有机会,在这样的大公司,在各类规范的流程指导下学习工做,我真的受益不浅。我知道这是个人幸运,不一样的项目对外包的工做,管理都是不太同样,和Leader有很大关系。另外一个项目外包的同事,进组一年多了,都没机会设计测试用例。这里我想讲的是,虽然外包总给不了人一种归属感,但同时也让你有机会和一群比你厉害的人一块儿工做,要利用这样的工做机会向同事请教、学习,迅速提升本身。还有一点很重要,必定要自信,若是你以为你能胜任,就能够争取点不一样的任务。 当决定好要换工做后,下面就要开始准备你的简历了。简历是你的敲门砖,用人单位看完你简历后,以为合适,经过简历筛选,才可以得到面试机会。面试

          简历首先要真实,真实反映你所干过的活,所承担的角色,你的贡献,真实反映你的技术背景。面试官通常会围绕你提供的简历,展开提问,你简历上所描述的,你必定要颇有把握。第二点,简历拿出来要有亮点。一位测试前辈老师,看完个人简历给我建议是“若是你以为本身是实力派的人,在简历中要突出你的能力,过去的业绩亮点。”最后一点,若是应聘的是外企,或则职位描述是用英文来写的,必定要附上中英文简历,要准备一份拿得出手的英文简历哦!锦上添花的是,若是你的简历排版简洁(中文简历通常不超过两页),美观,也会为你加分很多。 如何获取职位信息?当我发现我在大型招聘网站(如51job,智联招聘)申请那些我向往的职位都没消息后,我就放弃在这类网站上申请职位了,还发如今这些招聘网站上发布信息的就是那么几家公司,后来都懒得登入这些网站看了。那个人职位信息是从哪来的呢?答案是专业技术论坛,就测试而言,不少公司会在51testing中发布职位信息,个人简历很大一部分都是投给了这些职位。通常还都能收到反馈,即便简历不合要求。十月份的时候,我发现不少人会在weibo上发布职位信息,就开始关注weibo中发布的测试岗位了。后来,要个人那两家公司也都是我在weibo上看到的信息,投的简历。如今想一想,在大型招聘网站发布信息的都是HR,他们要在海量候选人中选择,被刷的几率更高。而利用论坛,weibo这些媒介发布信息的都是项目组的leader,他们将身边的一些岗位需求发布出来,有合适的候选人就内推,未来若是你面试成功,他们也能够得到一笔奖金。还有一个好处是,面试结果后,你能够发邮件请帮你推荐的人,查询面试结果。算法

           附上技术博客连接、Github帐号,若是平日里你有写技术博客的习惯,或者参加过开源项目,有Github帐号,均可以把连接帖在简历上。在面试的过程当中,不仅一次听面试官跟我讲,“我看过你写的文章,以为写得挺不错”。这些都会为你的面试加分。 利用好面试提问环节,通常面试结束前,面试官都会问你,有没有神马问题问他的?能够好好利用这个环节,一个漂亮的提问会为你加分哦! 下面谈谈,我面试过一些的公司,以及这些公司对测试工程师的要求,可能具体的面试题记得不是很清了,就写个大概印象吧。 目前所在的杀毒软件公司 —— 对我帮助很大的一场面试 这是上半年的一场面试,之因此放在这讲,由于这场面试让我认识到自身的一些不足。三月份的时候,在51job上看到南京焦点科技的专场招聘信息,周六下午没事就过去了,后来顺利经过笔试面试,拿到Offer。spring

           在我和Leader谈准备离开的时候,Leader又帮我争取到了面试我所外派的这家公司的机会。这算不上一次正式的面试,是周会结束后和QA Manager的一个小时左右的交流。一开始,是我讲进入项目组以来,我学到的知识,干的活,还有就是介绍自动化测试相关的。后来就是老板的提问,到如今我还记得这些问题: 做为一名QA,你是怎么理解“质量”这个概念的? Java的垃圾回收机制、内类的几种方式、堆和栈区别 在写自动化代码中,用到了哪些设计模式? 最近读过的关于软件测试的书,文章?有哪些给你留下了比较深的印象? 职业发展规划 回答这些提问时,我发现本身对测试的理解仍是不深,对Java中的不少概念仍是比较模糊。我忽然意识到本身是有多浮躁。面试结束后,老板给了我些建议,弄清基本概念,多读一些优秀的开源代码,不要贪多,必定要深刻学习下去。那次面试后,我放弃了焦点科技的Offer,继续留在项目组,又系统学习了Java编程思想,学习Junit那些框架的源码,并开了这个技术博客,逼本身要按期写文章。数据库

               四战IBM —— 英语口语要求较高 从八月底到十二月初,这短短几个月里,我前后面试过IBM三个不一样项目组,先后经历四波面试。七月初的时候,在Lotus中国社区看到Domino组在招测试工程师,就试着投了简历,后来也一直没消息。八月底的一个周二,刚下班接到了北京IBM的电话,约周四上午电话面试。由于如今测试的产品是Hook在Domino邮件服务器上的,在介绍所作的项目是,面试官问得很细致。接着细诉了,关键字实现、框架流程等。下面就是面试官提问: 一些STAF/STAX的服务命令。 自动化测试如何和CI系统集成。 Domino中邮件路由过程 算法题:一个字符串,如“This is a test !” ,输出“test a is This”,要考虑空间。 设计模式:对单例模式的理解,有几种实现方式。 Python: 字符串查找 口语题:你安排了一次团队活动,如今去给老板汇报,讲清楚:时间、地点、交通、具体活动安排。第二轮的时候,面试官会问,若是有一名RD手头有活,不肯意参加,你怎么说服他参加。编程

             此次面试,答得最差的题是口语题,基本是结巴着讲完的。准备面试的时候,没在网上搜过面经,根本没想过会有口语考核。血的教训啊,我后来面试外企的时候,都会提早问下有没有口语。这里顺便讲下有意思的事,面试完后,我在一个Lotus技术QQ群里问,有没有IBMer,问面试IBM多长时间有结果,没想到的是,竟然有人小窗找我,是NW,NW是IBM Lotus Notes组的工程师,NW讲,看到群里的QQ名,猜出了我就是前两天面试的人。原来,个人简历就是他挑选出来的。这个世界真小。后来他帮我查了面试结果,“HELD – wait for manager interview if no bettercandidate”,评价是“Java基础扎实,有自动化开发经验,但口语有待提升”。设计模式

          后来也没有接到进一步的消息,哎,感叹当了次备胎,失败了。 九月份的时候,在人人网IBM公共主页看到宁波研发中心招聘测试工程师,投简历,电话面试,也没消息了。十月份在weibo中看到发布招聘测试工程师,要求懂Java,有自动化开发经验。投简历,一轮电话面试,竟然是IBM System i 项目组,二轮电话面试,后来又没消息了。须要说的是,这两个组的面试也都有英文对话。 十一月底的时候,在weibo中看到老高发的招聘信息,要求“Java编程有所涉猎。软件测试流程和工具熟练掌握。对自动化测试,尤为是GUI程序的自动化测试有扎实经验”。后来知道老高是IBM Lotus Notes组的老板。老高将个人简历给了Domino组的老板沙。周一的时候,沙约我视频面试,当时在Office,无法进行,下午沙和另外一位同事,电话面试了40分钟,视频面试推迟到晚上。视频最后,沙问了我指望薪水、到岗时间,最后沙讲,年末了headcount很紧,明年应该会有名额。次日问NW,NW帮我查了面试结果,从面试记录上看,经过了。周三的时候,收到电话让我填写内部推荐的一个表格,就在我觉得没问题的时候,接下来的周一,沙打电话给我,确定了技术,可是由于年末没有名额了,来年再看。让keep in touch ,坑爹啊! 百度 —— 技术要求很高 六月份的时候,Paul让我给他一份简历,项目组缺人,结果那次简历没经过筛选。十一月份中旬的时候,百度又在招人,Paul问我要了最新的简历,又帮我推荐了次。Paul还给我讲了可能会问到哪一类的题目,好比算法。当时项目比较忙,考虑到时间有限,我就没花心思去准备算法。这个决定让我很后悔。面试也是,首先自我介绍,介绍所作的项目,在项目中的角色,作了哪些事情。来看看Baidu一面的问题: 在自动化实施过程当中成本最大的一部分是什么 在实现自动化过程遇到的最大困难,是如何解决的?安全

           Java: HashMap与HashTable的区别 Java: 对抽象类与接口的理解 设计模式:如何实现线程安全的单例模式 设计模式:监听者模式 算法题:判断一个链表是否有环 算法题:字符串左旋 算法题:二叉树中,两个节点间的最大路径。 面试到最后,想死的心都有,算法题懵了。后来在网上搜面经,发现这些都是常见的算法面试题,若是事先稍微准备下,就不会这么被动了。面试结束后,Paul帮我查了下面试结果,Pending。Paul让我准备第二轮面试,接下来的一周,我都在复习算法知识。一周后的周四,二面百度: 自动化框架的实现,为何这么作? 自动化过程当中遇到的难点,困难? 面向对象的特性,简单阐述这些特性带来的优点 接口与抽象类的区别 异常类处理机制 反射机制,在实际写代码中应用 final,finally,finalize的区别 有没有用过spring框架 测试用例设计题:就linux下的CP命令设计测试用例。 若是让你设计一些log监控系统,你会从哪些方面考虑? 二面表现通常,但由于一面算法部分答得太差,最后没能进入三面。个人感受,百度对技术要求真的很高,测试人员面试考算法的不多。若是你们未来面试百度,能够在网上找找相关的面经,作作相似的算法题,会有很大帮助。 红帽软件(Redhat) —— 各类假设 我是几乎同时接到百度、支付宝、Redhat的面试邀请的。相比其余公司,红帽好像更注重员工的工做习惯的考核。红帽的一面顺利经过,二面结束一周后,查看面试状态“no longer in consideration”。在技术上面的问题,我有印象的好像有这么几道,“自动化框架,关键字实现的Java代码总共有多少行”,“Python程序共有多少个module”,“两个Linux系统之间如何传文件” 。来看看其余问题: 若是让你带实习生,实习生天天有不少问题,这可能会打乱你的工做,你会怎么处理? 若是到了预订日期,你的工做还没完成,你会怎么办? 当你和其余同事,在技术方案的选择上发生争执,怎么办?你会如何说服他 用十个之内的词来形容你本身 用英文描述下你的兴趣爱好 其余一些公司 Dell开始提供面试机会的是一个开发岗位,由于我以为不合适,HR帮我推荐了一个虚拟化的职位,由于这是一个纯手工测试的岗位,我我的不是太感冒,面试一轮后就没消息了,我想说的是,Dell的HR manager Ripple是我遇到过的最nice的HR了,你有任何疑问邮件咨询,她会第一时间电话解答,并邮件确认。赞一个。服务器

         HP的职位是我在51job中看到的,但也是发邮件申请的,面试挺顺利的,最后谈到了薪资这一块,但后来竟然没消息了,接着传来了HP在裁人的消息。360的面试,就记得问过我,“闰秒”,“32位系统,和64位系统下的测试有何不一样”,说实话,这两问题我真不知道。赛门铁克,面过,没留下任何印象。VMWare很向往的一家公司,但自动化测试偏重于UI方面的,问过的技术问题:hashmap与hasptable的区别,讲讲java collection framework的了解,Java反射机制。

           支付宝 —— make it 投完简历不到一周时间,周四下午的四点多钟接到电话,有点奇怪的是支付宝并无像其余公司同样,事先约定面试时间,而是直接就开始面试了。面试进行了四十多分钟,比较顺利,最后面试个人女生问,支付宝须要常常加班,你能够接受吗? 接下来的周一,接到支付宝HR到杭州面试的邀请。面试定在周五中午十一点,我是周四晚上到杭州的,住在支付宝附近的汉庭,晚上快十一点了,支付宝大楼依旧灯火通明。第一轮,是两位工程师面的,挺顺利的。很从容的拿着笔在白板墙上讲解自动化框架、流程。面试官问了: 自动化测试执行时间,容错处理机制 Robot Framework 框架的优缺点 自动化测试下一步的有哪些能够提升的地方 Java的多态机制 平日工做是如何设计测试用例,讲解下目前所测产品的一个模块的测试用例设计策略 在整个项目周期中,测试要作哪些事情 第一轮面试,大概进行了一个小时十分钟,接着休息了五分钟后,进入第二轮面试。第二轮面试,面试官是测试总监、HR。

         第二轮面试,简单阐述了目前的项目,我所作的事情。后来就是提问了: C++和Java对内存的操做有何区别?Java的垃圾回收机制为何不能避免内存泄露问题? 熟悉哪些网络协议? 不一样网段的两台机器是如何通讯的? 考研了吗 大学同窗都从事哪些方面的工做(hr问) 最后,面试结束后,总监问我有什么问题?这个环节我准备的问题是,以前项目周四学习小组一块儿学习ET时,看taobao的探索式测试白皮书时,提出的疑问。听到这个问题后,总监笑了,说这个问题问得好,但我无法解答你,我也疑惑呢。 当我走出面试的那个房间时,我内心有80%的把握。接下来的两周是漫长的等待,由于支付宝面试不经过是发拒信的,我不时刷新个人邮箱,期盼着结果。最后实在忍不住,托帮我投递简历的人,查看了面试状态,答复“结果还好,但还没最后结果还在确认中”。第三周的时候,接到HR电话,聊了下薪资指望。

          第四周,开始有点睡不踏实了,真的很渴望这份Offer,我打电话一再和HR确认,周五晚上六点五十,收到了最终Offer。 结束语:大学毕业的那年春天去国展中心的招聘会,人头攒动,那时候的我很茫然,不知道本身能找到什么样的工做,也不是很清楚本身想要什么样的工做。这两年来我一直在努力,慢慢的我知道了本身想要找什么样的工做,渐渐地我也知道了我能找到什么样的工做。这条路,谈不上曲折,我一步步踏踏实实地走来。 

相关文章
相关标签/搜索