【IT168 技术文章】
目前来说软件测试人员都有这么些问题吧,这大概已经成为中国目前测试的瓶颈了。人心浮躁大概不是某些职业人特有的,其实是我们这些年轻人的通病了。但身为测试人员,当你在应聘找工作的时候是否发现过自己的不足呢?浮躁的测试人还是占大多数。
一、根基不牢
问题:利用等价类划分的方法,对某问题设计测试用例。
分析:98%以上的应聘者只知道按照有效等价类和无效等价类进行划分,殊不知此种分类方法只是等价类划分的一个典型应用而已,等价类划分远非只能划分为有效和无效两类。根据种种划分依据,还可以进一步划分很多其他类别。
问题:根据事件描述,画出对应的因果图。
分析:标准答案中只画了“两条恒等,两条非,一个与,一个或”。如此简单的问题,上百名应聘者中竟然无一人答对,痛心啊。黑盒测试方法就那么几种,既然你已知这个名,怎么就不知道多看几眼。
小结:
上面提到的是软件测试的最基本的方法,作为从业测试实际工作已经有1-2年的应聘人员,未能真正领悟,实属不应该,心浮气躁,忽视了你身边最简单,也是最厉害的技能。根基不牢,怎么可能把测试做深。
二、专业不精
问题:音视频文件都有哪些格式,这些格式之间有什么差别?
分析:此问题是问那些做过多媒体方面测试的,但是我们的应聘者向来都是拿来主义,别人给我什么媒体文件我就用什么做测试,而根本不管不问。“为什么 MIDI文件比WAV文件小那么多?我们如何知道扩展名是.Mpeg的文件是Mpeg1格式的还是Mpeg2格式的?”,面对这些问题,应聘者默默无语,只是无奈的笑笑。不去看别人,想想自己测试涉及的专业,是否把那个行业知识搞清楚了呢?
问题:测试脚本运行不畅如何调试?
分析:此问题是问那些标明自己熟练掌握WinRunner、Robot、QTP等测试工具的应聘人员,但是当真正问到他们关于脚本的具体调试时,有7成以上人员表示他们只是参加测试培训时老师讲过,或者自己在网上看过相关资料,另外有2成以上人员表示他们虽然用过,但是只是简单的录制回放,根本不会自己调试。可能是迫于无奈吧,简历里面什么都不写,可能面试的机会都没有,但是简历如此夸大的来写,终归是浪费自己的面试时间和路费。
小结:
从事测试仅1-2年时间,要想测试也精通,专业也精通确实不易,但是不说精通,至少也该知道个60%才对的起你的测试工作。一两年时光如此荒废,静下心来反思一下,身边还有哪些技能我们应该掌握扎实一点呢。
三、无测试体系概念,忽视理论
问题:请说出软件测试的定义,BUG的定义。
分析:99%的人不能说出这两个测试名词的定义,只是在给我解释测试是为了发现bug之类的片面理解,残留的几个人也说得不够准确。这两个词目前尚不能说业内已经有了成熟统一的定义,但是无论是对是错,身为测试人员已经数年,自己竟然说不出这两个词的概念,多少也说不过去啊。有些人和我说,理论名词概念不重要,我会做测试就是了。想想金庸老先生早就告诉我们,武功仅有招式是不够的,必须配合上什么心法口诀才能行。你只会测试执行的招式,却不懂测试理论的心法,怎么能够修炼成上乘的软件测试呢?
问题:请介绍一下你们的测试流程,流程和过程有什么不同,为什么好的测试需要好的流程?
分析:但凡做过1、2年测试的人都能给我说出他们先做什么后做什么,但是当我继续问“这是否可以叫做过程?流程和过程有什么差别”,应聘者一棒子被打晕,继续追问“为什么好的测试需要好的流程”的时候,早已经找不到东南西北了。每天公司各项制度叫你做什么你就做什么,让你怎么做你就怎么做,完全不管不顾为什么,那么自己岂不成了没头脑的工具。这样你能干的工作别人也能做,自己的优势不就没有了吗。
小结:
目前测试业内流传着学院派和实践派的说法,学院派的理论给人的感觉往往是好听但不实用,而实践派的知识,往往能够立即见效。所以眼下测试培训往往实践派的更受欢迎。继续引用金庸先生的观点,练武分练内气宗,练外剑宗,但是真正的高手是内外兼修。如果我们不想只做普通的测试小弟子的话,就要理论实践并重,方能有所作为。
四、周边知识知之甚少
问题:能给我介绍一下软件工程中的瀑布模型吗?
分析:又是8成应聘者不会回答,都是曾在遥远的学生时代有所耳闻,现今早已忘得一干二净了。软件测试因何而生——软件危机,软件危机导致软件工程的兴起,软件工程中又包含软件测试,就好像鱼儿活在水里,如果没有软件工程这个水,哪里能够养活这软件测试的鱼,如果我们对于身边的软件工程不够了解,怎么可能在里面自由的畅游呢。
问题:用你最熟悉的开发语言实现sum=1+2+3+…+100
分析:保守统计7成以上的应聘者写出来的程序无法执行或者运行结果错误,更少有人能够一气呵成,而且精准。这道编程题难吗?肯定不难,那么为何答错,自己没有真正写过程序,即使写过几行,也早就是如烟往事了。做测试一定需要懂开发吗?这个问题讨论以久,当然不一定,但是如果要做好测试,做深测试,分析问题原因,提出问题解决方案,编写测试脚本或工具,哪一个又能离开软件开发呢?
小结:
我们学习测试也应该有个先后顺序,有步骤。掌握周边知识的紧迫程度可能不如测试知识和行业知识。但是对于我们已经从业1-2年的测试人员来说,学校里面学到的知识不应该丢,之后的发展中,周边知识的学习也应该开始了。周边知识的范畴其实很广,还包括各种其他测试理念的学习,机械工业出版社翻译的那套测试丛书就很不错,观点众多而新颖,博众家之长,集大成,向来都是大家风范。
五、缺乏必要的责任心、细心、耐心、虚心等
问题:请数出下图中三角形的个数(平面图,有几根弧线做干扰)
分析:我总是问自己,这道题真有这么难吗?连中小学生都能数对的十几个三角形,到了我们这二十几岁的年轻人手中,正确率才1%,为什么?其实就是现在我们已经很少有人能够静下心来,耐心细致的去做事情了。很多应聘者告诉我她的优点就是“踏实,坐的住,正适合这繁琐的测试工作”。我需要的不是坐在那里不做事或者做错事的人,而是需要能够按时保质量完成测试工作的测试人员。
问题:你离职的原因?
分析:这是面试中最常见的问题了。应聘者往往也是充分准备,理由多种多样,但是看看应聘者的工作记录统计,70%应聘者平均跳槽频率是1年/次(实习情况除外),不会都那么凑巧吧,赶上什么公司倒闭,每隔一年就会想一次自己学不到东西,需要去外面看看。而在我看来,真正的原因更多的应该是希望通过跳槽提高工资,或者因为自身水平不足被公司炒鱿鱼吧。
小结:
我并不认为所有的人都适合做测试。非技术素质方面,这点或者那点不足够优秀也很正常,心浮气躁也可以理解。但是作为用人单位,理解归理解,却也不会用不胜任岗位,或性价比不高的人员。那么对于此类应聘者,我的忠告就是,要么你另谋高就,要么你就放低姿态,培养好你必备的素质后再谈。
六、缺乏诚信
这一点本应该被归在上一条素质中,但是这点的重要性我认为远超过了上一条所列各项,因此单独提出。相关表现主要体现在:1、虚报自己历史工薪;2、笔试题目作弊;3、编造离职原因;4、虚报学历,工作经验;5、夸大自己工作技能等。对于严重缺乏诚信的,一旦发现,其他表现再好,也无济于事了。
另外其实还有个大家都爱犯的通病,不知道如何问问题,言之无物,有的时候自己都不知道想问什么,但却心里总觉得自己是好学的是在请教,殊不知你并没有真正的在做事情,你并没有搞清楚事物的根本。
想学好一个东西,首要的就是要学好如何问问题。
最近在繁忙而复杂的找工作过程中,遇到问题无数,今日阅读若干文章感触颇深。自己的成败荣辱仿佛一瞬间集中在眼前。自己审视自己,真的,我还差的很多。