职业小贴士
从业者:苏炜
从业年限:5年
从业地点:深圳
工作岗位:测试组长
一句话感受:我们是“程序员的一生之敌”
对口专业:软件工程、计算机科学与技术、信息管理与信息系统等
从业门槛:大专及以上学历
能力要求:熟悉软件测试理论、测试用例设计方法,熟悉Postman、JMeter等测试工具的使用方法
晋升路径:初级测试工程师→中级测试工程师→高级测试工程师→测试架构师→测试总监
薪资水平:20万—30万元/年
入职提醒:掌握自动化测试技能是你迈向更高台阶的敲门砖
在每一款软件产品背后,都有一群努力找BUG(即软件中的缺陷、漏洞、不合理的存在)的测试人。没错,我们就是软件产品的BUG终结者——软件测试工程师,江湖人送外号“程序员的一生之敌”。
软件测试是指在规定的条件下对程序进行操作,以发现程序中的漏洞,衡量软件产品的质量,并对其能否满足设计要求进行评估。通俗来说,软件测试工程师就是软件产品质检员。
软件测试工程师的日常工作就是与软件开发工程师“斗智斗勇”,就拿我们公司来说,许多技术“大牛”都曾栽倒在我的“暴力”测试之下,因此我获得了一个独特的称号——BUG之神。久而久之,软件开发工程师对我闻风丧胆,每到功能压力测试环节,负责软件开发的同事都会提心吊胆,彻夜难眠。
软件测试不是“点点点”
在大多数人看来,软件测试就是根据需求,按照业务手册和设计稳点,对软件开发工程师设计的功能进行“点点点”,简单来讲,就是用鼠标一直点击测试点。对初级测试工程师来说,“点点点”的确是最主要的测试方法。不过,“点点点”只能在界面上进行功能测试,实际上,真正的测试不仅仅要测产品的功能,还要从其他维度出发,比如性能、接口、安全等。尤其是当前互联网软件版本迭代快速,如果你想在软件测试这条道路上走得更远,那么还需要掌握一些更高级的技能——自动化测试的方法,就是通过一系列测试工具、代码将原本需要手工“点点点”的操作转化为系统自动执行,这种方式的测试效率及准确率要比传统的高出很多。这些相关技术都需要软件测试工程师进行系统的学习,不是仅靠简单的“点点点”就能掌握的。
加强理论学习,技多不压身
相较于软件开发,软件测试工作确实不需要测试人员掌握高水平的代码编写技能,但这并不意味着软件测试工程师不需要掌握编程技能。软件测试工程师需要掌握的技能非常多且杂,这可不是招来一个人培训几天就能干的活。
首先,软件测试工程师必须掌握基本的软件测试理论。别小看软件测试理论,它可是指导测试人员进行软件测试的基石、方法论。正所谓“万丈高楼平地起,全靠牢牢打地基”,时至今日,我依旧清晰地记得上司带我入门时对我说的话:“你的技术还可以,就是基础不扎实!”
软件测试理论基础包括软件测试定义、软件测试用例编写、BUG处理、软件测试计划编写、软件测试报告编写等。同时,软件测试工程师还需要掌握一些信息技术知识,比如Linux系统的相关命令,以及掌握数据库的相关理论知识。当然,要想掌握这些理论技术,离不开对编程语言的熟悉和掌握,如Java和Python这两种常用的编程语言;若想熟练应用自动化测试工具,还需要掌握进阶编程语言。
其次,“工欲善其事,必先利其器”,软件测试工程师经常要与测试工具打交道,毕竟要想从“代码海洋”中寻找出那小部分需求不达标的功能,是需要耗费大量精力的,因此我们通常需要借助一些测试工具来辅助进行测试,比如Postman、JMeter等软件。这就要求我们熟练掌握测试工具的使用方法。
所以说,做好软件测试工作,是需要学习很多基础知识和技能的。软件测试的工作十分严谨,它和软件开发一样需要投入大量的时间和精力,这样才能够在成千上万条代码中寻找出BUG。
如何成为一名优秀的软件测试工程师
要想成为一名优秀的软件测试工程师,就必须要有“打破砂锅问到底”的劲头,要有精益求精的工作态度,时刻怀着质疑的心,哪怕是公司“大牛”开发的产品功能,也要严格按照测试理论,一点点去验证,不能麻痹大意。
要想成为一名优秀的软件测试工程师,需要练就一双慧眼。软件测试就像猜灯谜一样,需要我们迅速通过事物的表面现象去发现内部的联系和规律。
要想成为一名优秀的软件测试工程师,还要有不耻下问的勇气,不断强化自己的技能,积攒项目经验,深入了解公司产品,这样才能更快地找出软件产品所存在的问题,并给出合理的建议,进而做出优秀的软件产品。
后记
软件测试工作可能会比较枯燥,前期工作的大部分时间都是在“点点点”,若你想走得更高、更远,就需要沉得住气、耐得住寂寞。顺便给想成为软件测试工程师的你一点小建议:如果你能熟練掌握编程语言,那么与开发工程师沟通起来就更为简单、高效。
计算机类行业一直都是热门的就业行业,尤其是软件测试工作,坊间传言其“薪资水平高,还不用写代码和加班”,使得很多人跟风投身于此。不过,迈入任何行业之前都需要三思而后行,要考虑清楚自己的兴趣爱好,还要有长远的职业发展规划。我就认识一些跟风从事软件测试的人,干了几年,钱没挣到,技术也没有得到很好的沉淀,混不下去就只能再次转行,这样纯粹是浪费大好青春年华。