随着中国软件业的迅猛发展,软件产品的质量控制与质量管理正逐渐成为企业生存与发展的核心。为了保证软件在出厂时的“健康状态”,几乎所有的IT企业在软件产品发布前都需要大量的质量控制工作。作为软件质量控制中的重要一环,软件测试工程师应运而生。
然而,国内软件业因对软件质量控制的重要作用认识较晚,尚未形成系统化的软件测试人才需求供应链,造成了目前企业欲招纳软件测试人才却“千金难求”的尴尬局面。
现场
每人两台电脑
上周五,记者来到了雅虎中国,认识了一些专门为软件“挑错”的人,他们就是软件测试工程师。看到他们每人的工作台上都摆着两台电脑,心里颇为羡慕。细问才知道,原来电脑也是各司其职的,一台是工作机,一台是测试机。用得着分得这么清楚吗?得到的答案是,测试工作要用不同的系统,所以才用分开来操作,听起来真是够专业的。
这个部门叫做“品质保证部”,接待我的是部门经理鲍海燕。她说,测试是一个软件项目开发中的一部分,测试工程师非常繁忙,经常要加班。大大小小的软件都需要测试才能够正式发布出去。
鲍海燕说,到了测试的阶段,开发人员已经把代码都写完了,通常都会对自己的代码很有信心,觉得自己这块儿绝对不会有问题的,但当测试人员发现他这有问题的时候,就需要跟他沟通,找到问题出在哪儿,需要多方面的配合,有时候甚至要涉及前期需求的修改。
所有的产品都有可能在经过仔细的测试之后发布出去仍然会出现一些问题,就像windows现在还在发布各种补丁或一些软件发布升级版本。因为系统一旦大了,会有很多意想不到的情况出现,没有绝对完美的产品。
发展前景
人才缺口将超20万月薪可达七八千元
据了解,目前我国软件从业人员的缺口高达40万之多,其中软件测试人才的缺口将超过20万,在未来5到10年中这一数字还将继续增大。
目前,在软件企业中,软件测试人员的薪水主要还要看其工作经验及能力,在选择上,也有不同的机会,一些大公司,虽然薪金不高,但由于环境好,培训多,待遇高,所以还是有许多人愿意去。在软件产业中,目前有两年工作经验的软件测试人员的月薪一般都能够达到4000-5000元。
中国软件行业协会游戏软件分会副会长刘金华在接受记者采访时说,在企业内部,软件测试工程师基本处于“双高”地位,即地位高、待遇高,有的人月薪可高达七八千元。可以说他们的职业前景非常广阔,从近期的企业人才需求和薪金水平来看,软件测试工程师的年工资有逐年上升的明显迹象。
从业要求
要具有逆向思维能力
雅虎中国品质保证部经理鲍海燕认为,软件测试工程师首先必须具有电子、电机类相关专业知识背景。第二,还应有三年以上的实际操作经验,这也是对软件测试负责任的表现。第三,软件的使用者千差万别,软件在使用过程中遇到的各种现象也是千差万别的,所以要求软件测试工程师需要具有一些逆向思维的能力。这是作为一名优秀的软件测试工程师最基本的素质。第四,要有一种穷追到底的精神。第五,善于沟通,软件测试人员与开发人员搞好关系,这对于提高整个软件项目质量是十分重要的。第六,软件测试技术随着时间的变化也在做一些提高和改进,作为一名优秀的测试人员要善于利用书籍、网站、论坛、交流等各种途径不断提高自己的软件测试水平。第七,当软件测试人员发现软件中存在缺陷的时候,往往要书写缺陷报告,作为一名优秀的测试人员提高自己的写作能力是非常必要的。
从业之道
培训认证纷纷亮相
一名合格的软件测试工程师必须要经过严格的系统化职业教育培训,其作为产品出货前的把关人,没有专业的技术水准、不具备高度的工作责任心和自信心是完全无法胜任的。
软件测试人才的兴起迅速激活了国内培训市场,众多知名培训机构已针对性地推出软件测试人才培训课程。国外一些软件测试工程师培训认证体系纷纷抢滩中国。
国内最大的IT职业教育机构北大青鸟APTECH公司在国内相继推出了软件工程师与网络工程师之后,日前再次推出了国内首家以培养推出测试工程师为目标的系统培训课程BTEST。通过本课程,学习者将会系统化地掌握目前软件测试岗位的各项技术技能,以符合企业对于软件测试岗位的用人需求。
另外,作为从事各类软件测试、评议和审定的专业性组织,中国软件行业协会软件出版分会(Software Publishing Association)则推出了CSIA软件测试工程师资格系列培训。
职位说明
测试工程师的工作是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。作为测试经理要做测试计划,测试工程师则要执行测试用例,跟踪bug(故障),对照需求看产品开发是否适合需求。
从业者说
更多时候要反向思维
贺伊娜
方正软件测试工程师
从业六年
我是在从事软件开发工作一年多后,转向软件质量工作。软件开发工作和软件测试工作在工作上都有一定的压力,只是阶段不同。软件开发工作的压力集中在前期编码,而软件测试工作是在后期验证测试的时候比较紧张繁忙。
这两项工作是有所不同的,软件开发工作被公认为是一种创造性的工作,运用的是正向思维的方式。而软件测试工作其实也不是不需要创造性,只是它要根据原始需求,验证编码,在思维上更多使用的是逆向方式,根据已知的方向进行发挥,从中找出并预见到软件开发中的不完善之处,因而,相比之下,软件测试人员更需要具有独特的反向思维能力。
发现故障时特别兴奋
马尔丹
雅虎中国测试工程师
从业三年
做软件测试这个工作要有耐心、责任心,而且还要经常加班,不过好在已经习惯了。有时候很枯燥,每天对着两台电脑不停地工作,但是一旦发现bug(故障)的时候就特别兴奋,特别有成就感。产品就好像自己的孩子,没发布前总是提心吊胆的,生怕出些纰漏,一旦这个产品发布出去,在一段时间里没有出现质量问题反馈,心里感觉还是比较踏实的。
觉得自己越来越被重视
杨银辉
雅虎中国测试工程师
从业五年
测试工作最大的体会就是——累!发现软件有问题的时候心里特别庆幸。随着软件测试工程师的地位逐步提高而且越来越被重视,自己对工作也越来越有干劲。现在资深的软件测试工程师不多,今后在这方面人才的培训要多发展。以前觉得只有女孩子才适合做这种细致的工作,现在男孩子不再仅限于做开发,很多人都在向测试方面转移。但是,不论在什么工作岗位上,认真是最关键的。
本版撰文 王晓鸥