APP下载

软件测试中存在的问题及对策

2015-03-02孙莹

软件导刊 2015年1期
关键词:软件测试信息化管理项目管理

孙莹

摘要:在深入分析软件测试现状、存在问题的基础上,结合项目管理、信息化管理、软件测试规范与软件测试体系,提出相关对策,为软件测试工作提供借鉴。

关键词:软件测试;项目管理;信息化管理;软件测试体系

DOIDOI:10.11907/rjdk.143656

中图分类号:TP306

文献标识码:A 文章编号文章编号:16727800(2015)001005002

0 引言

软件测试是软件开发的核心环节,是在软件交付用户使用或投入运行前,对软件需求规格说明、设计规格说明和编码的最终复审[1],是确保软件质量、提高软件可靠性的关键步骤。随着IT 技术的迅速发展,软件规模不断扩大,软件设计的复杂程度不断提高,软件开发中出现错误或缺陷的概率也越来越大。同时 ,市场对软件质量重要性的认识逐渐增强,要求也越来越高,软件测试在软件项目实施过程中的重要性日益突出。然而,软件测试工作还没有得到足够的重视,存在诸多问题。本文着重探讨软件测试存在的问题及其对策。

1 现状及存在的问题

1.1 软件测试自动化程度低

虽然目前市场上有不少软件自动化测试工具,但由于工具本身的可扩展性差、价格昂贵、操作复杂等原因,未能得到很好的应用,软件测试仍然需要大量的人工介入,尤其是在嵌入式软件测试中。随着软件开发水平的不断发展及软件规模的扩大,人工测试项目成本越来越高、差错率越来越大,测试效率越来越低,项目进度失控风险不断加大。

1.2 文档管理重视不够

文档的重要性不言而喻,但是在实际项目中,存在诸多文档方面的问题,文档水平参差不齐。如内容过于简单、不符合规范要求、前后不一致、无法追溯、变更不及时等。

1.3 测试案例及方案重复利用率低

由于测试管理不严格,大多开发企业无成熟的测试案例库可借鉴使用,测试用例、测试程序、测试方案未保存,或者保存不完整、更新不及时,遇到类似项目测试时,往往无处可寻、难以借鉴,一切都要从头开始,导致资源浪费。

1.4 测试人员和经费难以保障

一般而言,软件测试成本要占整个开发成本的30%~40%,甚至更多,而且应配有与开发人员数相当的专门测试队伍[2]。当前,“重开发、轻测试”的思想和现象仍较为严重。在测试经费方面,多数未单独进行费用预算,测试费用很少,甚至短缺,从而导致测试工作敷衍了事、走过场的现象比较普遍。测试人员培养力度不足,很多情况下重复从事低水平的手工测试,测试能力提升渠道不畅。测试人才匮乏,能力不足,是制约软件测试工作发展的瓶颈。

1.5 测试工作介入较晚

不少项目未考虑实际情况,将测试工作安排在编码之后。测试人员介入时间晚,对需求分析和系统设计理解不充分,一方面无法发现需求分析和设计上的错误,另一方面也导致测试时间不充分,无法对软件进行全面测试,从而影响软件的质量。

2 相关对策

针对上述问题,结合项目管理方式、信息管理体系建设思想,提出如下措施。

2.1 结合实际工作灵活采用测试方法

(1)强化自动化测试手段,有针对性地选择成熟的自动化软件测试工具。针对不同的系统结构、开发平台、数据库管理系统选择不同的测试工具,以提高测试质量和效率。

(2)应用先进的软件测试方法。根据实际需求,加强性能测试、容量测试、余量测试等测试类型的测试力度。

(3)学习借鉴与自主研制有机结合。在充分借鉴国内外先进软件测试机构经验和软件工具成果的基础上,结合自身特点和需求,可自主研制开发具有自主知识产权的软件测试工具。

2.2 建立统一的软件测试标准和完善的软件测试体系

(1)统一的软件测试标准规范和软件测试体系,是对软件测试的整个过程进行明确的约束[3]。需对测试组织管理中的工作流程、人员组成、阶段任务和主要工作等作出规定,并对每类文档的格式、内容等制定统一的技术标准。加强标准和体系在实施中的过程管理,尽早发现需求和设计中的问题,不仅可有效提高软件质量,还可大大减少软件开发成本。

(2)建立缺陷案例库和测试用例库,提高测试案例和测试方案的利用率,方便报告、查询、分类、跟踪、处理和验证缺陷。这样不但可以尽早发现不确定问题的来源,缩短从发现问题到定位和解决问题的时间,还可为开发人员和测试人员提供借鉴,避免类似问题再次发生,提高工作效率和软件质量。

(3)注重软件配置管理,加强对文档的管理。在整个软件测试过程中,重视软件配置管理,加强变更的有效控制。通过有效的软件配置管理过程降低变更可能导致的一系列风险,提高整个测试团队的工作效率,使测试管理过程规范而有效。

2.3 将项目管理纳入软件测试管理

(1)将项目管理和软件测试流程有机结合,加强开发人员与软件测试人员之间的沟通管理。在软件测试中很多问题是相似的,通过与项目组的其他成员进行沟通讨论,借助团队的力量解决实际问题,通过团队合作和分享,将出现的问题记录在缺陷管理软件上,团队中的每个人都可以看到错误的产生背景及解决方案,从而提高工作效率。

(2)加大软件测试投入,配备专门的测试队伍。改变“重开发、轻测试”的思想观念。加大测试人员的培训力度,重视能力的提升,改善测试人员的待遇,提高他们对测试工作的认同感和成就感。

(3)加强软件测试风险管理。软件需求的频繁变更、人事变动、测试进度安排不科学、技术方法的不成熟等都会给软件测试活动带来一定的风险。在软件测试过程中需强化风险意识,认真编写风险管理计划,做好风险识别、风险分析、风险处理、风险跟踪与监控工作,做好进度管理中的人物分解与排序、进度计划、进度控制。

(4)加强软件测试进度管理。采取科学方法评估软件测试的工作量和进度,制定切实可行的测试计划,尽早介入测试工作。实际测试工作中不少环节可以开发和测试并行处理,如测试计划编写,测试工具选择以及测试环境搭建等。这样不仅可以提高工作效率,还可在前期发现并解决缺陷,降低修改、补救软件所耗费的成本。

3 结语

软件测试是保证软件质量的重要途径。本文对软件测试工作中的存在的一些问题进行了分析,结合项目管理、信息化管理、软件测试体系等,提出相关措施,可为有效提高软件测试的技术水平和管理水平,促进软件质量和可靠性的整体提升提供借鉴和参考。

猜你喜欢

软件测试信息化管理项目管理
基于OBE的软件测试课程教学改革探索
EXCEL和VBA实现软件测试记录管理
关于软件测试技术应用与发展趋势研究
软件测试工程化模型及应用研究