【软件测试】现状问题及对策

        一、现状及存在的问题

        1.1 软件测试自动化程度低

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

        1.2 文档管理重视不够

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

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

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

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

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

        1.5 测试工作介入较晚

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

        二、 相关对策

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    原文作者:千鸟渡落日
    原文地址: https://blog.csdn.net/tangweiee/article/details/121007613
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞