曹静粉
【摘 要】软件测试过程分为软件测试需求分析与测试策划、测试设计、测试执行、测试总结四个阶段,本文说明了各阶段应完成的主要任务和实施步骤,并结合GJB5000A军用软件成熟度模型管理的方法,提出了基于GJB5000A的软件测试过程管理方法,阐述了该方法中监督与控制、质量保证管理和配置管理的内容和要求,实现了我所软件测试过程的规范管理,提高了我所软件测试过程的管理水平,保证了我所软件测试的质量与效率。
【关键词】GJB5000A;软件测试;监督与控制;质量保证;配置管理
0 引言
随着我所软件多样化、逻辑复杂化的发展,软件的质量已经称为一个非常重要的问题,软件测试是解决软件质量问题的有效手段,如何提高我所软件测试质量与效率是测试中心研究的重要课题,由中国人民解放军总装备部提出的GJB5000A军用软件研制能力成熟度模型为高可靠、复杂的软件开发过程管理提供了有效地方法与途径。
1 软件测试过程概述
整个软件测试过程可以划分为需求分析与测试策划、测试设计、测试执行、测试总结四个阶段,下面对这四个阶段的主要活动和步骤进行详细描述。
1.1 测试需求分析与测试策划
测试中心根据被测软件的需求规格说明或设计说明文档(根据测试级别确定)测试要求或合同等,对被测软件进行测试需求分析与测试策划。
测试需求分析与测试策划阶段的步骤包括:
1)进行测试需求分析:如果有自动化测试管理工具,可将需求规格说明或设计说明中的需求同步到测试需求管理中;如果没有自动话测试管理工具,需要编写测试需求规格说明;
2)制定测试计划:包含被测对象、测试环境和测试的时间、资源安排。
1.2 测试设计
测试中心应根据测试需求分析和测试策划的结果进行测试设计,步骤应包括:
1)设计测试用例,编写测试说明;
2)确定测试用例的执行顺序;
3)准备和验证所有的测试用数据,针对测试输入要求,设计测试用的数据,如数据类型、输入方法等;
4)准备并获取测试资源,如测试环境所必须的软、硬件资源等;
5)必要时,编写测试执行需要的程序,如测试的驱动模块、桩模块等;
6)建立和验证测试环境,记录验证结果,说明测试环境的偏差对测试结果的影响。
1.3 测试执行
测试人员应按照测试计划和测试说明的内容和要求执行测试,根据每个测试用例期望的测试结果、实际测试结果和评估准则,判定测试用例是否通过。当测试用例不通过时,应根据不同的缺陷类型,采取相应的措施:
1)对测试工作中的缺陷,如测试说明的缺陷、测试数据的缺陷、执行测试步骤时的缺陷、测试环境中的缺陷等,记录到不符合项跟踪表表中,并实施相应的变更;
2)对被测软件的缺陷应记录到缺陷跟踪表中。
当所有测试用例都执行完毕后,测试人员应根据测试的充分性要求分析测试工作是否充分,是否需要进行补充测试:
1)当测试过程正常终止时,如果发现测试工作不足或测试未达到预期要求时,应进行补充测试;
2)当测试过程异常中止时,应记录导致中止的条件、未完成的测试或未被修正的错误。
在执行测试的过程中,可根据测试的进展情况补充测试用例,但应留下用例记录,并在执行测试后,变更测试说明。
1.4 测试总结
测试人员应根据测试需求、被测软件文档、测试需求分规格说明、测试计划、测试说明、测试记录和缺陷跟踪表等有关文档,对测试缺陷和结果进行分类和总结,编制测试报告,进行测试总结评审。
测试总结评审的具体内容和要求是:
1)评审测试文档与记录内容的完整性、正确性和规范性;
2)评审测试活动的独立性和有效性;
3)评审测试环境是否符合测试要求;
4)评审测试报告与缺陷跟踪表的一致性;
5)评审实际测试过程与测试计划、测试说明的一致性;
6)评审测试结果的真实性和准确性。
2 基于GJB5000A的软件测试过程的管理
在软件测试从测试需求分析到测试总结的过程中还需要监督与控制、配置管理、质量保证活动的支持,才能保证测试的有效性。
2.1 测试过程的监督与控制
1)监督与控制的目的
监督与控制的目的是控制测试过程的实际进展情况,以便测试负责人在测试的实际进展情况与测试计划有重大偏离时采取有效措施。
测试组织应制定监督与控制计划,包括监督的内容、如何进行监督以及监督的频率等。
2)监督与控制活动
监督与控制可采用日报、周报、周例会等形势,进行的活到主要包括:
(1)进度的监督与控制:通过对进度的监控,当进度发生重大偏离时,测试负责人能够及时的采取必要的措施。一般情况下,进度推迟20%以上时应采取适当的纠正措施;
(2)人员的监督与控制:对测试人员使用、测试工作效率等情况进行监督,使测试人员使用情况得到及时处理;
(3)资源的监督与控制:对资源(如测试环境)使用情况进行监督,使影响测试进度的资源使用情况得到及时处理;
(4)风险的监督与控制:对风险事件的分析、应对措施、影响情况、发生概率进行监督,当风险事件发生变化时及时采用相应的应对措施。
2.2 测试过程的配置管理
配置管理是对测试对象的管理以及测试产生的中间产品的版本管理,测试过程中软件的随意更改和版本混乱常常导致测试工作无效,因此有效的配置管理过程对保障测试效率至关重要。
在测试过程中可以使用配置管理工具,将一组测试定为基线,这样就可以为一组测试建立版本号,同时对测试用例和测试产品进行有效的版本管理。配置管理活动应包括:
1)制定配置管理计划:配置管理计划主要是策划基线、标识配置项、制定配置变更规定,安排配置审核和状态报告的时间;
2)实施配置管理控制:在测试的整个过程中按照配置变更规定对配置进行控制;
3)执行配置审核:按照配置管理计划中规定的时间进行配置审核;
4)配置状态报告:在配置项或基线的状态发生变更时,进行配置状态报告,报告的内容包括发生状态变更的配置项或基线名称、标识、版本、变更的时间、变更的原因、影响范围等。
2.3 测试过程的质量保证
测试过程质量保证的目的检查测试正在使用的过程和工作产品与其对应的要求和标准的符合性。测试过程的质量保证活动包括:
1)制定质量保证计划:质量保证计划主要安排工作产品和过程的审核时间;
2)根据质量保证计划对测试过程和工作产品遵循所用标准、规程和需求的符合性进行审核;
3)记录审核结果,形成质量审核报告;
4)跟踪发现的不符合项,直至不符合项得到适当处理。
3 结语
基于对GJB5000A军用软件成熟度模型的研究,结合高可靠、复杂的软件测试项目的具体情况,提出了基于GJB5000A的软件测试过程管理的解决方案,实现了我所软件测试过程的规范管理。采用这个解决方案,对提高测试中心的管理水平和技术水平都发挥了极大的作用。
【参考文献】
[1]郑羽软件测试项目过程管理与实践[D].西南交通大学,2010.
[2]董威.基于CMM的软件测试技术及其应用[D].华东师范大学,2006.
[3]刘文红.基于CMM的软件测试过程管理[J].现代计算机,2008.
[4]军用软件测试指南[S].
[5]军用软件能力成熟度模型[Z].
[责任编辑:杨玉洁]