测试服务对软件质量的重大意义(上)
CSIP赛普软件评测中心(赛普实验室)(http://www.csip.org.cn/col/csiplab/),于2008年正式对外承接商用测试服务。这是中国软件质量与测试行业的一件大事,它意味着该领域又一支生力军的诞生,是一件可喜可贺的事情!
中国软件测行业的现状与背景
软件测试在国内仍处于起步阶段,各种软件测试的方法、技术和标准都还在探索阶段。国内软件行业普遍规模偏小,缺乏大型软件产品经验,开发过程不够规范,这决定了国内软件质量和测试行业,必须根据国内行业现状,确定软件质量目标和测试策略方法,而不是照搬照抄国外成熟软件企业的测试方法。中国市场中的软件开发公司比比皆是,但软件测试公司则如凤毛麟角。
软件测试的重要性对于可靠性要求较高的应用软件,如在航空航天、银行保险、证券金融、电信通讯、操作系统乃至游戏等嵌入或非嵌入式软件的重要性显得尤为突出。
许多软件公司还没有正式的软件测试部门或专门的软件测试人员,他们的“测试”至多不过是程序员之间进行的程序交叉运行。有的公司虽然备有专门的软件测试人员,但他们往往派去进行软件开发过程的跟踪或“监理”,而且工作多数仅停留在看看文档、点点菜单的水平,难以进行到更高层次,诸如对代码的走查、覆盖性的分析、黑盒测试、白盒测试。
究其主要原因,首先是因为企业对软件测试的重要性理解不够。很多人认为程序能试运行基本上就已经成功,没有必要成立专门的测试部门或设立测试岗位。同时,项目的验收是通过开发方及委托方进行的程序试运行,而不是由独立于项目利害方之外的人员或单位进行专业测试。
另一方面,软件开发企业在为软件开发支付费用后,就不希望再为软件的测试支付新的成本,而项目甲方则往往认为开发合格的软件是软件开发企业的责任。
即使有些项目的开发方或委托方有意向对软件进行第三方进行测试,也会考虑到在测试过程中往往需要软件开发商提供源代码,担心其知识产权遭到侵犯。
如果一套软件中存在缺陷,最终造成的损失也是体现在软件的开发者及使用者身上,由此所引起成本的增加往往要远远高于测试的费用。至于知识产权的保护,一方面要通过法律的手段来保护,另一方面要通过在不同的测试公司间分配代码及开发文档来控制知识产权被侵犯的风险。软件产业要健康发展,不能因噎废食。我们不妨看看国外的情况。
在国外,软件测试是十分重要的。但是,成本和知识产权的问题也一直很难处理好,直到第三方测试公司的出现。
对金融服务行业来说,其应用软件关系到国家及个人的资金安全,必须保证不出问题。根据国家的要求,相当一部分金融嵌入式软件要经过第三方的软件测试并出具相关报告,软件系统才能投入使用。同样,对于航天、金融及电信等领域的软件,执行机构及企业本身则出于安全性要求较高的考虑也往往要求软件项目由独立的第三方进行验证。
在这样的背景下,专业的软件测试公司就应运而生。这些测试公司作为独立的第三方对软件进行测试,测试工作根据相应的软件要求并依据相应的标准进行,提供有效的测试报告。这种专业测试公司在国外已经拥有良好的市场。