“微软公司开发Windows2000操作系统的过程历时3年,投入50亿美元,使用了250名项目经理、1700余名软件开发工程师、3200余名软件测试工程师。其开发工程师与测试工程师的比例达到了1∶1.7。”软件测试的重要性由此可见一斑。
软件上市必先测试
随着国内软件产业和全球软件外包的迅猛发展,软件产品的质量控制与质量管理正逐渐成为企业生存的核心。为了保证软件在出厂时的“健康状态”,几乎所有的IT企业在软件产品发布前都需要大量的质量控制工作。美国质量保证研究所对软件测试的研究结果表明:越早发现软件中存在的问题,开发费用就越低;在编码后修改软件缺陷的成本是编码前的10倍,在产品交付后修改软件缺陷的成本是交付前的10倍;软件质量越高,软件发布后的维护费用越低。
作为软件质量控制中的重要一环,软件测试工程师应运而生。软件测试工程师的工作就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发的产品满足需求。
在软件业较发达的国家,软件测试不仅早已成为软件开发的一个有机组成部分,而且在整个软件开发的系统工程中占据着相当大的比重。以美国的软件开发和生产的平均资金投入为例,通常是:“需求分析”和“规划确定”各占百分之三,“设计”占百分之五,“编程”占百分之七,“测试”占百分之十五,“投产和维护”占百分之六十七。测试在软件开发中的地位不言而喻。
人才拥有“双高”地位
软件测试工程师本身是一个在软件产业化过程中突显出的一个新型软件技术职业,对刚刚开始进入产业化的我国软件企业而言,更是一种必需的技术岗位。然而,目前国内软件测试市场中的人才情况却令人尴尬,据信息产业部门调查数据表明,国内软件测试工程师的行业需求超过20万人,而实际从业人数不超过5万人,其中具备5年以上从业经验的软件测试工程师不超过1万人,可以说在软件行业,内部的人才积累很少,而国内的大学教育在这方面基本上还处于空白状态,即使目前在软件测试工程师岗位上从业的技术人员,多数也是处于边工作边学习的摸索状态,其专业能力的提升非常缓慢,亟需进行系统的培训和学习。
软件测试工程师的巨大缺口造就从业人员的可观薪水。中国软件行业协会游戏软件分会副会长刘金华表示,在企业内部,软件测试工程师基本处于“双高”地位,即地位高、待遇高,目前有两年工作经验的软件测试人员的月薪一般都能够达到4000-5000元,有的人月薪可高达7000-8000元。可以说他们的职业前景非常广阔,从近期的企业人才需求和薪金水平来看,软件测试工程师的年工资有逐年上升的明显趋势。
2006年4月,国家主席胡锦涛访美期间与美国微软公司创始人比尔.盖茨进行了会谈。之后,国家发改委与微软签署第二期有关继续加强软件产业合作的谅解备忘录。微软承诺,未来五年中将提供上亿美元的软件技术支持、软件开发和软件测试服务订单。
加快培养软件测试人才,开展软件评测技术的研究。适应软件产业专业分工和服务的需要,建立国家级的软件测试机构,建设软件质量评测平台,提供软件质量评测服务等,形成政府引导、社会各方参与、有效监督和管理的软件评测体系。
——《关于进一步提高我国软件企业技术创新能力的实施意见》(国科发高字[2004]124号)文件