北斗星小说网

手机浏览器扫描二维码访问

第16部分(第2页)

一般来说,第一个技术面试的考官会测试你的基本测试概念:比如边界条件(boundarycondition)、有效用例(validcase)、无效用例(invalidcase)、等价类(equivalentclass)等等。你开始不懂也没关系,面试官会给你耐心解释定义。等你明白了以后,就要看你是不是能应用这些概念来回答测试问题,看你能不能很快地学会新知识并应用于实践。

测试人员的面试主要看三类能力:一是重要的软技能,二是测试能力或潜能,三是编程能力。软技能包括:分析解决问题、替用户着想、联络沟通、交际、自信度、学新知识、系统思维、追根溯源、处理困难、团队精神和协作、管理、组织、分清优先度等能力。还要执著。遇到困难不放弃才能克服困难按时保质完成任务。

怎样评价测试能力主要是看给你一个测试问题后,你是否能够有由浅入深地分析出所有基本的、重要的、特殊考虑的测试用例。而且能否系统性地进行分析是很关键的。因为在微软测试工程师要能独立承担多个功能产品测试,我们要求测试工程师系统性地计划、执行和检查测试,不然很可能会漏掉重要的测试用例。有的应聘者能答出很多很好的测试用例,但却不能系统性地列出测试用例,而是无条理地、东一下西一下地找。比如,怎样测试一个自动卖饮料的机器(见下图)?

理想的测试工程师候选人应该能考虑到以下方面:包括外表感觉、颜色搭配、各部件相互位置等用户界面设计、内部结构、电源系统、投钱孔、灯、说明书、商标、饮料保持温度、机器室外最低最高承受温度、饮料补充和拿取、拿取口位置、拿取难易程度、重量、材料、饮料之间空隙、振动承受度、各种极端条件、特殊用户需求(小孩、老人、残疾人)等。针对投钱孔的功能测试应该有很多测试用例。比如测试输入钱的功能,应考虑用不同种的市面流通的所有钱币或钞票。比如硬币像一分、五分、一角、五角、壹元,纸币壹元、两元、五元、十元、一百元、五百元、假币、假钞、有缺损的真币、真钞票等。还有找钱的功能。边界条件应包括该输出的硬币或钞票用光了,没钱找时,应给消费者提示。还有很多可考虑的测试用例。就留下给大家做练习吧。

编程能力方面的问题可能和开发人员的面试问题有类似的地方,但应该简单一些,因为主要是基本的编程问题。微软从2005年前后开始对测试工程师必须要求有编程能力,因为现在初进微软的测试工程师的级别和开发人员是一样的,这主要是因为测试人员也要能编程,以便把大部分测试实现自动化。

对测试工程师的编程有关的面试题,不单单是看你能不能写出正确的代码,还要看你的代码能不能正确处理不同的数据或本程序需要处理的信息。你应该考虑到边界条件、包括有效和无效数据在内的不同数据类型、出错信息处理、给用户提供提示等做测试时需要考虑的测试用例。

txt电子书分享平台

开发工程师的面试(1)

开发人员的工作,主要就是围绕着软件开发的各个阶段,设计,编程,测试,调试等。理所当然,开发人员的面试,就是针对考核这几方面的能力。

(1)编程。有句话说微软的面试不写程序就不是微软面试了。没错,对于开发人员的面试这是真的。编程就是考你的基本功。

如果你的手已经生硬,多年没有写过一行代码,开发人员的面试一定搞砸。“能写程序”(cancode)是从大学毕业生一直到架构师,开发部主管都要过硬技术。平时多写程序是唯一的准备应付策略。取巧的人一般会被问得很尴尬。

但这里不是考你的死记硬背的功夫,例如告诉我一个Win32API的具体调用方式,或者是如何使用ATL或MFC里的一个类。更有可能的编程问题则会是涉及字符串操作,链表操作,二分查找,位操作等等这些不需要特定领域知识的东西。至于编程语言,一般人常用的是CC++,不过你愿意用什么都行,JAVA,C#,伪代码(pseduo…code)都可以。

这里我想特别的说,要注意白板编程(whiteboardcoding)的练习。所谓白板编程,就是直接在纸上或者是黑板白板上写出程序。看似简单,实际上是很能磨炼能力的。有时候你觉得自己心里面想清楚了,实际上往纸上一写发现完全不是那么一回事。

(2)设计。这也是开发人员面试中必考的分析问题和解决问题的能力。事实上没有什么可以特别准备的。“数据结构算法”在大学念好了,平时用得多了,这就不是一个问题了。

同编程一样,着重的也是面试者活学活用的能力。在互联网上可找到许多微软面试编程设计的问题,很多这些问题都没有单一答案。提问者希望面试者通过思考找到最佳算法,而不是只会死记硬背。例如,会延伸问题来验证面试者的优化能力,就像我前面举出的素数的那个考题中展示的样子。

特别的,微软的算法问题一般十分重视优化:运行最快,用最少内存等等。最好的准备是在日常工作中多问自己几次:“这可以更快更好吗?”日子久了,优化就变成自然的本能。微软的很多开发人员都有这种本能。这也是开发队伍引以为豪,一直相传的素质。当然了,如果你问我既然这样,为什么WindowsVista在我的256M内存的机器上还跑得这么慢的话,本人拒绝回答。(玩笑,玩笑,嘿嘿)

(3)测试。开发人员也要管测试?没错,正如测试人员需要懂编程一样,开发人员也要具备基本的测试程序的能力。

开发人员是自身程序的第一个测试者:单元测试(unittesting),就是开发人员来做的。可不是写好了程序,往测试组一丢就行了。想一下,如果测试组在你的不足50行的函数里一口气发现七八个问题的话,他们的工作量倒是上去了,你的面子可就不那么好看了,不是吗?

所以往往开发人员的面试中会有这种情况,让你写出一段程序,然后看你会不会做最基本的测试。当然了,测试不会是开发人员面试的重点,但也必须是准备的一个方面。

(4)调试。从已有程序中判断问题所在,调出错误代码的功夫,是每个有志于开发工作的诸位,必不可少的能力。设想一下,如果测试组发现了问题,也许压根不是你的代码的事,对不起,身为开发人员一份子,你的责任就是要找出症结所在。

所以往往我会在面试者写出一段程序后,看他或她能否发现自己刚写的那段代码中,有没有什么错误或考虑不周的地方。也许,我会直接给出一段有错误的代码,让面试者看看。如果一时没有发现,我会稍许提示。不过我要是心里嘀咕,老兄,这么明显的内存溢出,怎么就看不到呢?那么最终的评价,肯定要有所折扣了。:)

最好的准备,就是平时的实践。写好一段程序,先别急着测试或运行,闭上眼睛想一想,心里走一遍逻辑,看有没有一眼可以发现的错误。

txt小说上传分享

开发工程师的面试(2)

(5)其他。这里主要指其他的软能力,例如交流,团队合作,工作热情等等。这里就不具体说了。

稍许小结一下,就像前面面试故事中提到的,不仅仅要知其然,而且要知其所以然。死记硬背不行,真正掌握,会活学活用才是关键。

书 包 网 txt小说上传分享

微软面试指南

面试前后

知己知彼,百战不殆。面试也是如此。怎样才能做到知己知彼呢?知己就是认识自己。首先你自己要明确在今后的几年内你自己到底想要做什么?你的奋斗目标是什么?你有什么优点,什么缺点?你怎样才能通过学习和练习来弥补你的不足之处。知彼意味着了解对方。了解对方有很多含义。从大方面说,是招聘公司的情况。从外部看,是公司的主要产品,强烈的竞争对手,关键的客户对象和今后的战略目标。从内部看,是公司的企业文化,员工特点。从小方面?

热门小说推荐
魔师逆天

魔师逆天

前世孤苦一生,今世重生成兽,为何上天总是这样的捉弄!为何上天总是那样的不公!他不服,不服那命运的不公。自创妖修之法,将魔狮一族发展成为能够抗衡巨龙的麒麟一族,成就一代麒麟圣祖的威名。...

鹿鼎风流记

鹿鼎风流记

少年附身韦小宝,和康熙做兄弟,唬弄皇帝有一手绝色美女尽收,色遍天下无敌手!睿智独立,诱惑惊艳的蓝色妖姬苏荃花中带刺刺中有花的火红玫瑰方怡温柔清新纯洁可人的水仙花沐剑屏空谷幽香,善解人意的解语花双儿倾国倾城,美丽绝伦的花中之王牡丹阿珂诱惑惊艳美艳毒辣的罂粟花建宁空灵纯洁娇艳精怪的山涧兰花曾柔...

张三丰弟子现代生活录

张三丰弟子现代生活录

张湖畔,张三丰最出色的弟子,百年进入元婴期境界的修真奇才。他是张三丰飞升后张三丰所有仙器,灵药,甚至玄武大帝修炼仙境的唯一继承者,也是武当派最高者。在张三丰飞升后,奉师命下山修行。大学生,酒吧服务员,普通工人不同的身份,不同的生活,总是有丰富多彩的人生,不同的遭遇,动人的感情,总是让人沉醉不已。武林高手...

修真位面商铺

修真位面商铺

成仙难,难于上青冥!修真难,没有法宝没有丹药没有威力巨大的符箓,没有强悍的天赋。但是自从有了位面商铺就不一样了,有了位面商铺一切都有了。什么,修真界最普通的洗髓丹在你那里是绝世神丹!什么,你们那个位面遍地都是各种精金矿物,精铁灰常便宜!前世走私军火的商人,今生在修真界同样要将商人当做自己终生的追求。我只是一个做生意的,修炼真仙大道只是我一个副业。成为位面商铺之主,横扫诸天万界。商铺在手,天下我有!...

风流英雄猎艳记

风流英雄猎艳记

生长于孤儿院的少年刘翰和几女探险时偶得怪果奇蛇致使身体发生异变与众女合体并习得绝世武功和高超的医术为救人与本地黑帮发生冲突得贵人相助将其剿灭因而得罪日本黑道。参加中学生风采大赛获得保送大学机会。上大学时接受军方秘训后又有日本黑龙会追杀其消灭全部杀手后又参加了央视的星光大道和青歌大赛并取得非凡成绩。即赴台探亲帮助马当选总统世界巡演时与东突遭遇和达赖辩论发现超市支持藏独向世界揭露日本称霸全球的野心为此获得诺贝尔和平奖而在颁奖仪式上其却拒绝领奖主人公奇遇不断出现艳遇连绵不...

倚天屠龙夺艳记

倚天屠龙夺艳记

赵敏的娇蛮狐媚周芷若的举止优雅小昭的温柔体贴不悔的秀丽美艳蛛儿的任性刁蛮  一梦醒来,该是倚天屠龙的另一个新主角上场了...