转自:https://blog.csdn.net/lingdanfeng/article/details/80251179
第一个问题:自我介绍
心理学首因效应告诉我们第一印象非常重要,自我介绍最重要的是能够在面试官心目中留下一个好的第一感觉
说得更直白一点是让面试官舒服。但是我发现很多人就是直接简单的介绍了一下过去的经历,但是实际上一方面过去的经历没有很好的让人发现优点。其实面试好比相亲,你想说什么不重要,重要地是人家想听什么。
比较好的自我介绍套路是这样:“您好,我叫XXX,很高兴能获得这次面试机会,今天来面试是想证明自己是最合适的人选,另一个方面是获得您的认可,结合我过去的工作和学习经历,我自信我能符合咱们公司的认可,接下来您看是我继续介绍我做过的项目,还是您问您关心的问题?”
第二个问题:项目介绍
项目经验直接决定一个人能否胜任一份工作,企业更应该看重一个人解决问题的思路和具体能力
项目介绍部分最重要的思路是应该先整体后局部
介绍整体的时候要有量化的数据,从项目度量的五大维度:
包括项目代码规模
- 需求规模
- 用例规模
- 工作量
- 进度
- 质量
- 成本
然后是整体的测试流程,然后再是角色与职责,接下来是项目中自己的特色,比如做得最好的是、遇到最大的困难时、最差的是,最后是心得体会。
第三类问题:数据库方面知识
最基本的要求是数据库记录的增删改查(insert、delete、update、select),表结构的增删改查(create、drop、alter、describe)、存储过程、触发器等。
第四类问题:linux操作系统相关
最基本的目标是熟悉常见的50个命令,比如find命令(-name、-type、-perm、-user、-group、-ctime、-atime)等,熟悉vi、熟悉linux搭建测试环境。比如LAMP环境搭建。
第五类问题:缺陷相关知识
最基本的是缺陷跟踪的流程(流程的基本要素),整体的流程,最好能在纸上给面试官画出来,缺陷单的属性,至少能列出20个属性,每个属性的意义,如何描述好缺陷单,缺陷单描述的5C原则,比如缺陷重现步骤应该complete。如何描述一个你认为的最经典的bug单。
第六类问题:用例相关
最基本的包括
- 用例的格式要素
- 用例设计工程方法论,每个方法要求(方法的背景,操作步骤,优缺点、适应范围,与其他用例方法如何配合)
- 在项目中如何利用测试用例设计工程方法。
- 如何评价、评审测试用例
- 评审从哪些维度?
- 要设计好测试用例需要哪些方面的知识结构,比如技术、业务、方法。
第七类问题:软件测试流程,系统测试相关规范和标准的流程:
熟悉产品/项目,需求评审,测试需求,测试计划,测试方案,测试用例,预测试,第一轮正式测试、第二轮回归测试、第三轮测试,测试报告,测试总结,测试指南。
第八类问题,网络相关
最基本的网络基础知识,比如TCP/IP协议。
第九类问题,测试工具
包括三个大的类型
- 第一类是性能测试工具
- 自动化测试工具
- 测试管理类工具。
最起码的要求是熟悉工具的使用。
第十类问题,给你一个软件,比如QQ、QQ斗地主,你如何去测试
这类问题基本的思路是,从
- 软件质量模型
- 测试工具
- 测试方法
- 测试流程
- 探索式测试
等角度先宏观解决,然后再具体微观讲解用例如何设计等。
这类问题怎么解决/回答?其实方法流程很简单:
1.明确测试任务
2.分析测试范围
3.制定测试计划和测试用例
比如,在面试题目中,并没有明确产品可以运行在什么手机平台上,对平台的支持需求不同,测试的设计的差异性是很大的,所以,在回答该问题之前,先应该向面试官发问,明确产品支持的手机平台,之后,才能有的放矢的开展具体的设计(或者即使不问面试官支持哪些平台,在回答的时候也要说清楚先跟团队确定运行的平台)。
再比如,应该明确产品的研发周期等信息,只有了解了项目进度安排等信息,才能制定有效的测试策略,在测试的深度和项目开发时间要求上取得较好的平衡。比如,有的项目是时间驱动的(Date-Driven),这类项目的特点是预先制定发布时间,要求到了那天,产品就一定要发布,对这类项目,我们在设计测试计划时,就应该更多的考虑解决和项目发布相关的质量问题;另外有些项目,可能是质量驱动的(Quality-Driven),这类项目的特点是对发布时间没有强行的规定,但要求产品的质量必须达到一定的指标,并且需要在发布以后,实时监控产品质量,那么,在测试中,我们不仅要做好项目当下版本的测试工作,还需要考虑构建长期、高效地测试系统和平台,保障产品质量能够实时度量。另外,明确产品的功能设计、产品的核心竞争力、可用的测试资源等信息,对于接下来做产品测试都是至关重要的。
问题:假设你是QQ这个产品的测试负责人,你怎么去测试QQ传文件这个功能?说一下测试点,你可以发挥自己的想象力,不必局限于它现有的功能。
我更想听到的答案有两种,
- 一种是按照传文件的流程(客户端A-网络-服务器-网络-客户端B)
- 一种是是按照测试框架回答(比如系统的说明从UI、功能、性能、兼容性、安装部署、服务器端、网络、安全。。)
测试人员最重要的素质是什么呢? 的确存在有些人思维发散度很不错,虽然不会设计用例,但是很会找bug。但是这样的人可遇不可求的。而且通过面试去发现一个人的思维发散度有多好不太现实,我还是更保守的通过看一个人的思维模式来判断他是不是我想要的人。 我现在所负责的系统架构比较复杂,涉及到方方面面,测试过程中需要思考的问题,跟上面这个案例差不多。一个人是真的懂,还是临时抱佛脚,可以通过不断的深挖来发现。所以, 如果想要在面试时“不露马脚”,仍需要在工作中就培养这样的思维模式。
第十一类问题,一个优秀/卓越的软件测试工程师应该具备哪些能力与素质
素质方面包括沟通、五心工程师、追求完美等;
第十二类问题,最后一个问题,面试官一般会问,您还有什么想问的吗?还有什么想了解的吗?
总体上来说最重要的是留下一个好的近因效应,就好比相亲的时候,分手离开的时候,留下好的最后的印象,基本的思路应该分三种情况,
第一种是面试官对你满意,自己也感觉不错的情况下,先表示感谢,然后积极主动的问题,比如,非常感谢您给的这次机会,但是我还是想问,如果我有下一轮面试,我想知道知道是什么时候,我应该再做哪些方面的准备。
第二种情况是面试官和自己感觉都一般般,感觉自己是鸡肋,这个时候说不说很重要,基本的套路是,非常感谢面试官给的这个机会,坦白地说我对自己今天的面试表现不是非常满意,还可以表现得更好,但是如果我还是非常想得到这个机会,您能否给我一些建议。
第三种情况是面试情况非常糟糕,这种情况下,很少有人能说出感谢,但这恰恰体现一个人的风度。基本的思路是,不管怎么样,还是得感谢您给的机会,让我自己认识到自己的不足,坦白地说我离这个岗位的要求还有些距离,但是我还是想知道,如果将来我还想来咱们公司面试,您能否给点具体建议。
总结,面试是一个相亲的过程,相亲的成败取决于很多要素,但是好的、充分地准备,能够让我们更加从容地和主动的去面对压力与挑战,而不是简单地把自己变成超市里面的菜,供人挑选。