版本控制方案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

控制测试版本方案版本控制目的1.保证各个环境(开发、测试、主干)的独立,避免相互影响。2.减少最终发布时合并主干出现冲突的概率。3.降低冲突处理的难度。项目中,我们首先会把发现的Bug提交给开发人员,开发人员修复后会把修改过的代码提交到正在测试的版本中去。但是修改过后的代码,我们不能保证它是否会带来新的隐患,这样就给测试人员的测试工作带来困扰。后来发展到只要开发人员一提交代码到正在测试的版本中,我们就会比没有发现Bug更为紧张,每一次除去验证修复的Bug之外,还都要尽量保证没有遗漏新修正代码所带来的后患。软件测试缺乏版本控制的后果1.缺乏版本控制,难以保证测试进度测试管理上,不可能要求每个版本都是完美无缺,否则就不需要出新版本了。但要求每个版本的状态都必须在掌控之中,最基本的就是哪些功能OK,哪些功能NG。换句话说,一个测试版本应该很容易对应到一个状态。在未来的任何一个时间点,新测试版本应可以拿来和这个测试版本的快照(Snapshot)做比较。2.缺乏版本控制,难以保证测试的一致性软件测试往往是多个测试人员共同协作的过程,不同人对同一个软件的不同部分同时做着测试,这种行为有时会出现彼此交叉的情况。因此,软件测试是多人共同协力进行的复杂工作,必须要在效率与纪律间取得一个平衡,而版本控制据实践证明是有效的方式之一。当缺乏版本控制时,测试一致性的失衡风险就会经常发生。因此,对测试团队来说,每个测试版本都应该是一个重要的核查点,因为版本控制代表着掌握着测试过程某个时间点的状况。所以,在多个测试人员共同负责的一个软件测试中,没有进行版本控制或者版本控制本身缺乏正确的流程管理,将会引入很多问题,并难以确保测试的一致性。3.测试版本冗余,易出现误用风险一般来说,待测软件在各个测试人员的机器上都有拷贝,并且同一个测试人员在不同时期也会在本机保留多个的软件版本。简单的说就是,一台机器上可能不止一个测试版本。这类似于一种信息的冗余,对于不同版本而言其差别有时可能并不很大。但一个很重要的问题是随着时间推移,测试人员可能会对自己机器上的不同版本间的具体差异了解也变得模糊不情,甚至忘记了当时为什么区分这些版本的原因,这就会给测试工作带来麻烦。而且同时维护多个版本,也很难保证这一过程不会出现差错。因此,缺乏版本控制,版本冗余的误用风险就会成倍增多。4.容易导致本地版本和服务器版本不一致测试版本混乱造成的危害还体现在资源的浪费上面,很多测试团队经常发生测试组花费时日测试某一项功能,却发现最新修正的开发版本已经把整项功能取消,导致大家重复测试。发生这类错误原因是因为测试组没有拿到最新的开发版本,也可能是测试人员在从服务器那里更新本地版本时,由于缺乏版本控制和管理,从而导致本地版本和服务器版本不一致。因此,加强本地版本和服务器版本的一致性管理,是绝对重要的一项工作。5.缺乏测试文档可追溯性版本控制不仅只为各种测试版本提供了文档管理支持,还能提供可追溯性的文件。这样我们就可以随时查阅软件测试过程中生成的各种文档,这是提高、总结和分享测试经验的重要途径之一。版本控制流程:原则:多个版本(开发版本,测试版本,发布版本);多次合并。流程:1.项目开发编码前从当前主干建立一条开发分支,供项目开发人员使用;2.开发结束,提交测试的时候,从当前主干建立一条测试分支,将开发分支合并到测试分支上,供测试人员进行测试。这样开发人员对开发分支的修改不会影响测试环境;3.bugfix的时候我们定时将开发分支的修改合并到测试环境中。3.回归测试的时候,从当前主干建议一条发布分支,将测试分支合并到该发布分支上,在发布分支上进行回归测试。4.发布前,将发布分支合并到当前主干。好处:1.多个版本相互独立,互不影响2.通过多次与主干的合并,这样发布时候和主干做最后一次合并的冲突会大大减少,并且在与主干多次合并过程中的冲突解决都在测试阶段中得到了测试。建议:如果项目的周期比较长,和主干进行合并的次数也应该加大,以降低处理冲突的难度。

1 / 2
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功