淘先锋技术网

首页 1 2 3 4 5 6 7

对于测试这个岗位,各公司重视程度不同。就大多数软件公司而言,对测试工程师的技术水平要求都不高,一般月薪在4-8K左右,大致就是初级测试工程师。

从去年开始到年后的跳槽高峰期再到现在,我公司一直在招聘网站上发布软件测试职位,一年多来,本人先后面试了几百个初级测试工程师了。

现本人就对行业的理解和面试中所遇到的应聘者,聊聊对初级测试的看法。帮助你在应聘中把握关键点,提高待遇水平。

一、为什么软件公司需要初级测试工程师?

1、因为这些公司开发出来的产品本来就没多少技术含量,你以为个个都是华为啊。所以需要的测试就更没技术含量了。

2、软件测试本身就需要做一些重复性的工作,对需求的实现进行严格把关的步骤。需要人为控制。

3、软件公司对测试本身的不重视,不愿意花高薪水去招聘测试工程师,甚至好些测试其实是由程序员来完成的。

4、作为某些产品和项目的验收标准,需要测试报告和操作手册等相关内容。所以要人来做这些工作。

二、应聘者分类。

1、大学刚毕业或毕业不久,本科学的是计算机相关专业,但开发经验基本没有,退而求其次,选择做测试。

2、做过1-2年开发,但加班太多,技术水平又难以提升,认为凭着一些开发经验去转测试应该很容易,从而选择搞测试。

3、年龄在26-30岁,之前做的工作和计算机关联不大(比如卖保险的,开网店的,事业单位没有正式编制的,卖硬件的,风里来雨里去的),几年下来事业没啥成就,要么原有单位裁员或解散,听朋友介绍说测试容易入行,然后学了些理论,去应聘测试。

4、在软件公司呆了几年做文职工作,耳濡目染,逐渐对测试感兴趣,再通对周围同事的了解与被点化,去转岗测试。

三、为什么选择软件测试?

1、测试简单啊。

初级测试一般就是在电脑或手机页面上点点点点,就是所谓的功能测试。按我们经理的说法,一套软件系统,找个会打字的初中生一天学会怎么使用,再教两天就能学会测试了,然后界面上哪里报错就拿个本本记下来。这就是最基础的初级测试。

2、可以进军IT界。

话说现在在一个普通的软件公司做测试工程师,普遍收入水平比不了快递员、出租车司机,更不如楼下卖冰粉的大妈。但是,这个工作说出去体面啊,不用日晒雨淋啊,空调屋呆着舒服啊,IT公司所接触的人也都是白领精英啊。

3、还有的同志,认为可以从测试开始,慢慢学习逐步发展,将来可以转岗开发或者产品。

是的,大多数人对测试这个职位的看法也是这样的,所以就步入了这个领域。

但刚入门往往不得要领,莫名其妙的在面试中受挫。下面就来点干货。

四、关于应聘要点。

1、简历筛选:

①、简历篇幅不要太短。一般自我介绍、技术特长、项目经验等。

②、不要专注于吹嘘之前某项目或产品的成就,比如之前的公司开发了一个什么,然后长篇大论有哪些功能、用户数、大数据的一系列内容。筛选简历的人也知道,这些内容跟你的关系不大,看多了头痛。

③、千万不要写熟悉word,熟练使用excel。你已经是IT圈的人了,这些内容人家看到会觉得你来搞笑的。

2、公司希望招个什么样的初级测试工程师?

①、知识面宽。

看起来高大上的公司,实际并一定,面试你的人可能是个技术负责人,测试主管,甚至是个产品主管,或者程序员都有可能(但就以上几种角色,也肯定比你厉害)。最好在三分钟内摸清对方到底是哪种角色然后再应对。公司绝对不会喊个技术总监来面试一个初级测试工程师。所以不用担心问题太难自己不会,只要提前准备,尽量体现自己的知识面宽。

②、认真负责。

可以介绍自己在之前的工作中对于软件质量保障所尽职尽责的方面。

③、情商高,容易沟通。

测试人员也要和多部门打交道,除了开发,还有产品,售前,售后,客服,客户等。所以面试官希望看到的是个比较善言辞,乐观积极,遇到问题努力想法多方沟通解决的人。

④、爱学习,有想法,希望在技术领域持之以恒。

2、面试内容:

①、一般来说,面试官都不会特别的准备一堆内容依次来问你。基本上是根据你简历里面写的东西来问,简历不要太胡吹了。

你说你了解mysql,我就问你默认端口号是多少;你说你熟悉mysql,我就让你写个sql来查询从2019年1月1日到今天间隔了多少天;你说你精通mysql,我就问你存储过程和事务处理。

你说你熟悉黑盒测试,我们就相安无事;你说你熟悉灰盒测试,我就问你输入输出;你说你熟悉白盒测试,我能问你一下午。

②、软件开发知识常识要有。

比如BS和CS有什么区别。我遇到过有人答:BS适合软件开发,CS适合硬件开发。

比如什么是md5,什么是Chrome,http和https有什么区别,Linux的pwd是什么语句,这些简单的要是有一个不会或者乱说,基本就gg了。

③、遇到不懂的问题不要瞎编,因为初级工程师嘛。比如什么是LAMP,什么是NFC,不会的话,不要openyellowgun。诚实可靠是做测试人员的基础。

④、对于非技术问题要积极应答。不要问啥说啥,比如:

你之前是怎么跟程序员打交道的(不要发现BUG提交禅道就完事了,他是想问你怎么定位BUG是前端还是后台错误,怎么跟相关产品开发沟通解决)。

你有些什么爱好(不要老是打游戏听歌看小说,应该多讲讲参加网络培训啊,学习编程语言啊等)。

⑤、对于问题要想好体现全面性。

比如有个现场笔试题:有一个APP安装包,其功能是使用手机安装打开APP后,就能看到办公区内的所有办公室门禁编号,点击按钮就可以开启相应的门。现在所有办公室的门已经安装好,APP安装包发给你,在不给你需求文档的情况下,让你来测试,你会有些什么测试手段?

多数应聘者拿着这个问题,都是从问题本身出发,回答的都是:

连续点击某个编号的按钮,会有什么情况。

几个按钮一起点,会是什么情况。

点某个编号按钮,会不会其他门开了。

门开了一半断电,会是什么情况。

多个人都安装APP,一起操作会发生什么情况。

这些都是就事论事的回答。实际题目想考察的是对整个软件功能的全面理解。

例如:

APP是安卓的还是IOS的,有没有操作系统版本限制。(涉及到APP是否可用)

APP有没登录功能,有没权限划分。(涉及到登录和权限)

开门有没日志,日志是记录了哪些内容。

APP是通过蓝牙还是wifi(移动网络)的情况下开门。

APP在wifi和弱网络情况下的测试。

APP有没定位功能,能否远程开门。

然后再是具体以上提到的开门测试。

五、测试工程师基础要求:

1、熟悉测试理论。包括白盒黑盒性能压力等内容,不一定要掌握,但要知道概念和要点。

2、熟悉测试方法。包括边界值、等价类、等等。

3、熟悉项目流程:立项、需求分析、评审、编码、测试、操作手册、培训、运维、维护等环节。并能尽可能多参与其中的环节。

4、熟悉浏览器各种版本。

5、熟悉APP测试,包括苹果安卓的主流机型和操作系统。

6、熟悉数据库管理工具。了解1-2种数据库,并掌握数据库基本增删改查语句。

7、了解和掌握linux系统下的环境搭建。熟悉linux命令。

8、熟悉版本管理工具。svn,git等。

9、熟悉测试管理工具,如禅道等。

10、参与需求评审并提出项目建议。(加分项)

11、编写测试用例和执行。

12、有和客户沟通交流培训经验。

13、能编程或使用工具进行自动化测试。(加分项)

14、熟悉压力测试,并能运用工具或编程进行。(加分项)

15、有硬件测试或软硬件结合测试经验。

以上的要点虽多,掌握起来可深可浅,但都是测试工程师所要面临的,希望读后能对应聘和工作有所帮助。