软件测试阶段的版本管理

时间:2024-03-14 点赞:43306 浏览:82137 作者原创标记本站原创

本文是一篇版本论文范文,关于版本方面在职研究生毕业论文,关于软件测试阶段的版本管理相关毕业论文的格式范文。适合版本及工程师及测试方面的的大学硕士和本科毕业论文以及版本相关开题报告范文和职称论文写作参考文献资料下载。

摘 要:随着信息化技术的发展,软件测试作为软件工程中的重要环节逐渐受到重视.为保证测试结果的准确性,在测试过程中对软件版本的管理尤为重要.本文通过对软件版本管理技术和方法的研究,结合测试阶段的特点,提出了一种基于职责、流程、规则、属性四要素的软件版本管理方法(DFRA模型),从而确保测试工作和被测版本的有效性,并且使整个测试过程可追溯.

关 键 词:软件测试;版本管理;DFRA

中图分类号:TP311.53

1测试版本管理的现状与问题

众所周知,测试是提升软件质量的有效手段.然而,在测试过程中,我们经常会遇到如下问题:测试执行过程中,已经修复的缺陷,在下一个版本中重复出现;测试人员提交的缺陷被开发人员退回,理由是开发环境上不可重现.究其原因,就是测试版本管理的随意性:在测试开始之前没有制定测试过程中的软件版本管理计划,没有指定相应责任人,也没有制定版本管理的规则和流程,于是在测试过程中,何时由何人发布版本就不明确,随意的发布版本,造成了上述问题.软件版本管理是配置管理的一个重要部分,业内专家和学者进行了一些版本管理方面的研究,如软件配置管理中版本管理技术研究[1],增量开发软件项目版本管理关键问题解析[2],基于构件的软件配置管理中版本管理关键技术研究[3]等.但是,对测试过程中软件版本管理的研究非常少,在实际的项目中,测试阶段的版本管理也基本采用与开发阶段的版本管理同样的工具与方法.目前,市场上有上百种软件版本管理工具,这些版本管理工具一般采用的是“检出-修改-检入”的模式,是基于源代码文件的版本控制,完成代码的统一管理,对于开发过程来说比较适用.但是测试过程中的版本管理与开发过程中的版本管理的粒度不同,测试过程关注的不是软件中某一段代码的维护,而是要将软件作为一个整体发布,形成一个可测试的软件版本.因此测试过程中的软件版本管理虽然要以版本管理工具为依托,但是更需要一种规范化的流程和方法来对测试软件的版本管理所涉及的要素进行明确.

2测试版本管理的目标

为解决上述问题,本文的研究工作将针对测试阶段的软件版本管理,通过研究制定一套测试过程的软件版本管理流程和规则.以期望达到如下目标:

(1)使每一轮测试都在有效的版本上进行.如果在测试执行中,被告知被测版本无效,需要在另外的版本上重新测试,这会极大影响测试效率和进度,因此,有效的测试版本是保证测试效率的基础.

(2)使测试过程可追溯.测试过程中的软件版本管理,除包含软件本身,还应包含与软件相对应的文档说明.也就是说在每次发布新的软件版本时,应同时提交相应的文档,说明此版本的软件实现了哪些功能,进行了哪些变更,修正了哪些缺陷,从而使测试,缺陷都能与版本对应,达到可追溯的目标.这样,通过测试的软件可以形成一个基线版本,传递至下一环节.

(3)使软件在出现问题时,可以方便的回退到上一个版本.通过规范化的软件版本管理,可保留在系统形成可测试的基础版本到基线版本的任意版本的备份及相对应的文档说明,假设软件部署后,出现了严重的问题,可方便的回退到此过程中任意稳定版本.同样,软件在升级更新的过程中,如果由于更新的代码出现错误影响到了原有的代码,也可方便的将版本进行回退.

总而言之,测试版本管理的目标是就是在测试过程中对需要测试的软件版本进行控制、记录、追踪,最终确保测试工作和被测版本的正确性、完整性、可控性,使得通过测试的版本能够满足用户需求.

3测试阶段的软件版本管理模型DFRA

测试阶段的版本管理与开发阶段的版本管理关注点不同,在开发阶段,开发人员关心的仅仅是代码段、与代码相关的需求、设计,而对于测试阶段来说,测试是将整个软件(包括需求、代码、设计、文档等),作为基于计算机系统的一个元素,与其他系统元素结合在一起测试.

针对测试阶段的特点,我们提出一个基于DFRA模型的版本管理方法.测试阶段的软件版本管理由四个要素组成:职责(Duty)、流程(Flow)、规则(Rule)、属性(Attribute).

3.1版本管理角色与职责

版本管理的第一步是明确版本管理的角色和职责.通常针对版本管理中的问题,需要多方面人员共同协调解决,在版本管理中需要参与的角色包括:


版本管理员:实施版本管理(建立版本基线、实施版本变更操作)、版本基线发布、备份.

项目经理:负责审核代码、并提交测试版本变更、确定版本信息.

开发人员:负责提交本人编写的代码,保证代码的正确性.

测试人员:对各版本进行测试,提交缺陷,新版本发布后进行回归测试.

3.2版本管理流程

明确版本管理流程,就是根据版本管理的角色分工去实施版本的管理的过程.本节从版本的总体管理流程和测试过程中的具体版本发布流程两个角度进行说明.

版本的总体管理流程如图1所示,首先将通过集成测试的软件形成一个基础版本,然后在测试过程中根据实际情况进行相应的版本发布管理,系统测试结束之后,形成了一个基线版本.此版本可作为下一个测试阶段如业务验收测试的基础版本.同时系统测试总结报告的测试结论也是基于测试阶段最后的基线版本得出.测试阶段的版本管理流程是测试过程的一部分,在图2中体现为:

具体流程说明如下:(1)开发人员完成所负责模块的代码编写任务后,提交到项目经理处;(2)项目经理向测试部门提交测试任务;(3)版本管理员准备测试所需的环境,发布基础版本;(4)测试人员开展测试并实时提交BUG;(5)开发人员处理测试过程中所出现的BUG,进行相应修改后,提交代码和修改说明至项目经理处;(6)项目经理提交发布请求至版本管理员处;(7)版本管理员发布新的版本后,通知项目组成员(包括测试人员);(8)提交给测试人员进行回归测试;(9)测试完成后,测试人员提交测试报告;(10)项目经理与各相关人员经讨论后确定好新版本各项信息,版本管理员发布基线版本.3.3版本标识规则

进行版本标识,将每次发布的版本通过标识进行区分,并达到使版本标识规范和清晰的目标.采用的命名规则为项目简称:主版本号、子版本号、阶段版本号、日期版本号.当软件首次被提交到测试阶段时,会形成一个初始版本:项目简称1.0.0日期.下表对主版本号、子版本、阶段版本号如何划分进行说明:

3.4版本属性

针对测试过程中软件的每一个版本,都要有文档描述其相应属性.开发人员在提交本人所负责模块的代码时,需要告知版本管理员,所做的修改,如增加的功能、特性或模块,修复的缺陷等.版本管理员在每次发布新的版本后,都要填写该版本的修订说明并发送项目组全体成员.并且在缺陷管理工具中配置相应的版本号,以便使测试人员在提交和验证缺陷时能与被测试的软件版本相对应.

3.5小结

综上所述,在基于DFRA模型的测试版本管理方法中,职责是基础,流程是主线,规则与属性是核心,这四个要素缺一不可(图3).通过明确职责,采用规范的流程进行版本管理,实现确保每个测试版本有效性的目标,通过明确规则,描述版本属性实现了可追溯的目标,同时在确保了每个版本的有效性及可追溯性的前提下,一旦软件出现问题,便可回退至上一稳定版本.

4实例分析

O系统是一个银行管理信息类系统,在项目一期的系统测试阶段没有采用规范的版本管理方法,主要由项目经理临时决定发布版本,在测试过程中,出现过多次修复的缺陷反复出现的情况,更严重的是已修复的缺陷在生产系统上出现的情况.在二期的系统测试阶段中,项目组采用基于DFRA模型的方法进行软件版本管理.在测试开始执行前,即指定了专人作为版本管理员,同时项目经理、开发人员、测试人员都通过培训树立了较强的版本管理意识,在测试过程中严格按照版本管理流程进行版本发布,同时每次发布的版本都有唯一的版本标识,在缺陷管理工具中及时更新版本列表,用表格记录每个唯一版本的属性.在整个系统测试执行期间,按照测试阶段的软件版本管理流程(图3)发布版本15次,生成了版本属性表格(表2).

通过采用DFRA版本管理方法,使系统测试始终都在有效的版本上执行,未出现由于版本错误导致测试返工的情况;同时实现了可追溯的目标,使功能模块发现的缺陷、修复的缺陷都能与版本不相对应;并且在上线前,由于开发人员修改某段代码导致系统功能不可用,采取了回退至基线版本的方法;实现了测试版本管理的预期目标.

5结束语

本文提出了一个基于DFRA模型的测试阶段软件版本管理方法,并通过实例描述了该方法的使用.与开发过程中使用的版本管理方法不同,开发过程的版本管理一般是源代码级别的,实现代码的统一管理.而测试过程的版本管理模型是将源代码、数据结构、文档视为一个整体.通过版本管理,保持软件版本与文档的一致性,从而使整个测试过程可追溯,软件在出现重大问题时,可回退至任意稳定版本.

相关论文

关于银行软件测试管理

此文是一篇软件测试论文范文,软件测试类有关论文范文检索,与关于银行软件测试管理相关毕业论文的格式。适合不知如何写软件测试及项目风险管。

软件测试的风险管理

关于风险管理及软件测试及测试方面的免费优秀学术论文范文,关于风险管理方面经济管理研究生毕业论文,关于软件测试的风险管理相关论文范文。

软件测试需要项目管理

本文是一篇软件测试论文范文,软件测试方面有关毕业论文范文,关于软件测试需要项目管理相关学士学位论文范文。适合软件测试及项目管理及软件。

软件构架中的知识管理

此文是一篇知识管理论文范文,关于知识管理论文范文数据库,与软件构架中的知识管理相关毕业论文题目。适合不知如何写知识管理及软件设计及软。

移动代理技术在软件测试中的应用

为您写软件测试毕业论文和职称论文提供软件测试类毕业论文开题报告范文,与移动代理技术在软件测试中的应用相关论文范文集,包括关于软件测试。

建筑施工阶段工程造价管理

本论文为关于工程方面工程研究生毕业论文,关于建筑施工阶段工程造价管理相关研究生毕业论文开题报告,可用于工程论文写作研究的大学硕士与。