一、引言
随着软件市场的成熟,人们对软件作用期望值也越来越高,软件的质量、性能、可靠性等方面也正逐渐成为人们关注的焦点。目前,中国软件产业在产品功能和性能测试领域都存在着严重不足,中国软件企业已开始认识到,软件测试的广度和深度决定了中国软件企业的前途命运。
软件测试并非传统意义上产品交付前单一的“找错”过程,而是贯穿于软件过程的始终,是一个科学的质量控制过程。国外成熟软件企业,1个软件开发工程师对应1-2个软件测试工程师,而国内软件企业,平均8个软件开发工程师才对应1个软件测试工程师,比例严重失衡。
二、软件测试行业现状
软件的大工业生产决定了软件测试是生产的必不可少的环节。对于人员配置,一直以来流行一种五比一的标准说法。 从公司内部看任何时候都是远高于这一比例。从近一个时期看,开发与测试工作量的比重甚至达到了二比一。同类型成熟产品之间的竞争最容易取胜的方法是提高质量。
软件的大工业化并不是在消灭个体户和小作坊,只是减少了他们直接与最终用户打交道的机会和必要。如今他们生产和包装软件的目的在于等待大公司的收购。为此,在最后阶段需要进行“最终用户测试”。
与此同步的是,软件测试市场已成为软件产业中的一个独特市场。在美国硅谷地区,凡是软件开发企业或是设有软件开发部门的公司,都有专门的软件测试单位,其中软件测试人员的数量相当于软件开发工程师的四分之三。在这些公司或部门中,负责软件测试的质量保证经理的职位与软件开发的主管往往是平行的。据了解,在软件产业发展较快的印度,软件测试在软件企业中同样拥有举足轻重的地位。
与国外相比,国内的软件测试业状况又如何?目前,国内软件测试市场表现实在有点令人尴尬。中国市场中的软件开发公司比比皆是,但软件测试公司则如凤毛麟角,“市场化的第三方测试如同刚刚出生的宁馨儿,目前的市场几乎可以忽略不计。”
为什么国内的软件测试市场会如此嬴弱,到现在企业才开始关注呢?以笔者之见,究其主要原因,首先是因为企业对软件测试的重要性理解不够。很多人认为程序能试运行基本上就已经成功,没有必要成立专门的测试部门或设立测试岗位。
另一方面,软件开发企业在为软件开发支付费用后,就不希望再为软件的测试支付新的成本,而项目甲方则往往认为开发合格的软件是软件开发企业的责任。即使有些项目的开发方或委托方有意对软件进行第三方测试,也会考虑到在测试过程中往往需要软件开发商提供源代码,担心其知识产权遭到侵犯。这是软件测试市场无法长大的又一个重要原因。此外,软件开发企业不重视利用外部的测试力量进行测试也是因素之一。
三、困惑的软件测试员
很多时候,投资在测试上的人力及财力,将由许多的因素来决定。而其中软件测试人员是很重要的考虑因素。其实组织在软件测试方面最大的成本开支就是测试人员上。在软件工具及测试设备都比较接近的今天,竞争对手之间在软件测试方面的竞争,主要就体现在软件测试人员上。
近期的无忧指数显示,软件测试工程师已经成为2007年最紧缺的人才之一,该类职位的需求主要集中在沿海发达城市,其中北京和上海的需求量分别占去了33%和29%;而从企业分布来看,民企需求量最大,占了19%,外商独资欧美类企业需求排列第二,占了15%。目前,国内软件测试人才紧缺的现状已经凸现出来。
笔者认识一位朋友A,做专业的测试工程师已经有一年多的时间了,目前仍然在做较为底层的测试。有时候也会写写测试需要的代码,但还没有开始设计整个项目测试案例。目前A正在为某一著名软件公司做软件测试,工作的流程非常严谨而明晰,这自然也意味着枯燥的重复。枯燥并没有淹没A的工作激情,发现一个Bug带来很大的成就感,特别是想到每天将会有几百万人通过使用没有这个Bug的软件准确无误的达到他们的目的。
前途在A心目中是非常明朗的,颇有一些“随需”择业的味道。曾经有媒体报道过近来软件测试工程师在职场需求中的风光景况,尽管IT行业的总体需求仍然疲软。在北京和上海等地,测试员的需求量占到了招聘总量的近1/3。另一方面,A认为从测试员成长为软件项目管理者是更有优势的。