第三方软件测试流程以及实施中存在的问题和建议
作者:陈银平,王荣
来源:《中国管理信息化》2018年第08
        [ ]第三方软件测试具有公正、独立、专业的特点,随着软件企业和用户对软件质量提出了更高的要求,第三方软件测试必将得到快速发展。本文主要分析了国内软件测试行业的现状以及第三方软件测试的发展,并阐述了第三方软件测试的一般流程,并针对第三方软件检测过程中遇到的问题给出了几点建议。
        [关键词]第三方;软件测试;流程
        doi10.3969/j.issn.1673 - 0194.2018.08.033
        [中图分类号]TP311.52 [文献标识码]A [文章编号]1673-0194201808-00-02
        1 国内软件测试行业的现状
        随着我国加入WTO,软件全球化竞争日益加剧,用户对软件质量提出了更高的要求,越
来越多的软件企业和用户已经意识到软件测试的重要性。但是国内软件测试与欧美国家相比还存在很大差距,主要表现在以下几个方面。首先,软件测试在软件产业中的地位较低,很多软件公司特别是小公司认为测试可有可无,经常在软件开发完成后才进入测试阶段,没有把软件质量保证工作贯穿在软件的整个生命周期。其次,软件测试人员的配置不能满足需求。国内测试人员和开发人员的比例远远低于国外知名企业的人员配置比例,例如,国外知名IT企业的开发人员和测试人员的比例通常为11,有些甚至是12,而中国的开发人员和测试人员比例为51,从而导致最终开发完成的软件产品存在较大的缺陷。最后,软件测试技术相对落后,行业规范有待完善。国外软件测试发展较早,软件测试技术、测试工具以及测试管理工具都比国内先进。
        2 第三方软件测试的发展
        第三方软件测试在我国已有二三十年的发展历史,为我国软件产业的健康发展做出了重要贡献。在一些对功能、性能、信息安全等要求较高的领域,如金融、航空、军方等,都较早地采用了第三方软件测试这种模式。随着用户越来越重视软件质量,越来越多的使用财政资金建设的信息化项目将由第三方软件测试报告作为项目验收的一个条件,一些非财政资金
建设的信息化项目也逐步接受了第三方软件测试。将软件测试通过合同关系委托给第三方测试机构承担,有效地提高了软件产品的质量,这种模式已被软件用户和软件企业认可。
        软件用户方通常不具备专业的测试软硬件设备和技术能力,并且由于行政干预等因素,导致测试不全面,而软件第三方检测则具备一定的优势。第三方软件测试具有客观、公正和独立等特点,已成为保障软件质量的一个重要手段,需要具由专业的测试人员进行测试。
        3 第三方软件测试的一般流程
        第三方软件测试机构签订了委托测试合同后,开始进行测试需求分析、测试项目策划、测试分析、测试设计、测试执行、编制测试报告和测试总结等工作。工作流程图如图1所示,每个阶段的具体内容如下。
        3.1 测试需求分析
        测试需求人员通过与客户进行沟通和阅读软件相关文档,获取客户的显性和隐性测试需求信息,形成《测试需求说明书》。《测试需求说明书》要经过相关方评审,并体现出用户的真实需求。
        3.2 测试项目策划
        测试策划人员根据委托方提供的被测软件、与被测软件相关的文档、《测试需求说明书》等内容制定《测试计划》。测试计划的主要内容包括识别测试任务、定义测试目标和为了实现测试目标而进行的测试活动。此外,相关方需要对《测试计划》进行评审。
软件测试项目流程
        3.3 测试分析和设计阶段
        本阶段的主要任务包括以下几个方面:评审测试依据,包括需求分析、用户手册、说明书等;设计测试用例并确定优先级;确认测试条件和测试用例所需要的测试数据;测试环境的搭建和确认测试需要的设施设备。本阶段要设计测试用例,并编写《测试用例》文档,《测试用例》要经过相关方评审。
        3.4 测试实现和执行阶段
        本阶段的主要任务包括以下几个方面的内容:测试用例开发、实现并确定优先级;创建测试数据,设计自动规划测试脚本;确认已正确搭建了测试环境;根据计划的执行顺序,执行测试用例;记录测试执行的结果;比较实际测试结果和预期结果,如果之间
存在差异,上报给项目经理,对缺陷进行确认,并分析引起差异的原因;缺陷修正后,重新进行测试。该阶段形成《测试执行记录》和《缺陷列表》。
        3.5 评估出口准则和编写测试报告
        评估出口准则是将测试的执行结果与已定义的测试目标进行比较,评估是否需要进行更多的测试,或者需要更改测试的出口准则。项目经理和测试执行人共同根据测试结果编写测试报告。测试报告一般有编制人员、审核人员和批准人签字。
        3.6 测试总结
        测试结束后,需要从已完成的测试任务中收集和整合有用的数据,主要包括:检查提交可交付产品;记录和归档测试环境、测试设备等;分析和整理获得的经验教训等。
        4 第三方软件测试实施中遇到的问题
        1)软件企业重开发、轻测试,这在国内软件企业中普遍存在。由于对软件测试不够重视,导致软件产品的售后服务大幅度增加,从而大大提高了软件成本。成本增加导致企业
更不愿意做软件第三方测试,即使做也只愿意花很少的资金。作为第三方软件测试机构,经常面临工作量大但收入少的情况,从而缩小了第三方检测机构的盈利空间,导致人才招聘和检测设备购买受到限制,这已成为制约第三方软件检测机构发展的一个瓶颈。
        2)第三方软件测试一般是在系统集成和验收两个阶段开始介入,通过测试发现软件功能、效率、信息安全等存在重要问题。但第三方测试对软件的设计阶段、需求分析阶段以及编码阶段涉足甚少,缺少对软件整个生命周期进行质量控制。
        3)第三方测试是在项目后期才进行的,留给第三方测试的时间较短,需求文档、用户手册等文档可能不够完善、详细,导致第三方测试机构对软件需求理解不全面。此外,设计文档不齐全,测试人员需要花大量的时间熟悉被测软件,会对测试结果带来不良影响。
        4)软件第三方测试,一般是第三方检测机构与软件用户签订委托测试合同,但是在开展工作的过程中需要软件开发方的协助配合。因此第三方测试机构需要协调好与用户和开发商的关系,否则很可能会影响测试工作的质量和效率。
        5)用户、软件开发方、第三方测试机构的权责不明确。在第三方测试工作的实施过
程中,有些用户甚至是软件开发商认为,进行了第三方测试的软件都没有错误,将软件质量的高低寄托于第三方测试机构。一旦软件不能满足预期的需求,就归罪于第三方机构。虽然软件测试能够发现软件的错误,但是软件中的错误可能发生在软件项目的各个环节,从而不能保证软件不发生错误。
        5 第三方软件测试发展的建议
        1)树立质量意识。第三方测试具有客观、公正、独立等特点,通过第三方测试能够发现软件的问题,提高软件的质量,但测试不能保证软件没有错误,也不能发现全部的问题。要提高软件的质量,用户和软件开发商必须要树立质量意识,对软件的整个生命周期进行控制。
        2)用户积极参与。用户积极参与不仅可以快速有效地解决测试中遇到的许多问题,还可以监督测试工作的运行情况,以保证测试质量。此外,用户参与测试,可以更好地了解测试的思路、测试的依据、测试的出口准则等,从而使用户更容易接受测试方的理念和思路,还能起到沟通桥梁的作用,督促软件开发方配合第三方测试工作,从而提高测试质量和效率。
        3)加强人才队伍建设。国内软件测试行业是新兴行业,处于起步阶段,专业的软件测试人才比较紧缺,而从事软件测试的人才大多是从软件开放等相关领域转过来的。为了推动软件测试行业健康、快速地发展,我国必须建立完整的软件测试人才的培养体系,在高校中设置软件测试专业,在社会中鼓励成立软件测试培训机构,为第三方软件软件测试行业的发展培育专业的人才。
        4)规范第三方软件测试市场。随着第三方软件检测需求的不断增加,第三方软件检测机构不断增多,一些企业甚至在购买一两套自动化测试工具、招聘几个软件专业相关的人员情况下,就成立了软件测试中心,导致测试的软件质量不过关,用户不满意,用户渐渐会不信任第三方软件测试,从而会影响软件测试行业的可持续发展。为了使我国第三方软件测试行业健康发展,我国需要规范第三方软件检测机构的入市条件,为软件测试行业的发展制定一系列的规范,确保第三方检测市场健康发展。
        6
        第三方软件测试在我国已经有了二三十年的发展历史,为我国软件产业的健康发展做出了突出贡献,且由于第三方测试具有客观、公正、独立等特点,已经逐渐被软件用户接受。
在第三方软件测试中,经常会遇到时间紧、任务重、责任大、三方关系不好协调等问题,但是随着软件企业和用户对软件质量的要求不断提高,第三方软件测试服务需求将不断增加,必将迎来蓬勃发展。
        主要参考文献
        [1]郑丽娜,王威,周悦.中国第三方软件测试发展现状分析[J].软件产业与工程,20125.
        [2]周萍,吴娓娓.软件第三方测试实施中的问题及建议[J].软件设计开发,200928.
        [3]陈锃基,黄茂生.软件第三方确认测试的管理与策略[J].电子产品可靠性与环境试验,20054.
        [4]杨文娟.试论第三方软件测试发展现状及对策[J].网络与信息工程,201610.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。