51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 4916|回复: 10
打印 上一主题 下一主题

[原创] 高手来看看这样的版本控制会有问题嘛!

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-2-1 23:02:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先说说目前公司版本控制的情况。
公司基本是以研发为主体的,项目经理就是研发的老大,所以版本就是他喊build就build,但是由于版本是需要发给客户,所以就搞了受控测试!基本流程是这样的:
PM觉得差不多了,就向SCM申请受控,打tag生成版本,提交给测试进行测试,经过测试后如果通过就把这个tag上的代码进行备份。如果没有通过会在比较短的时间内修改Bug,然后再build一个测试,如果bug够修改了,那么接下来又申请受控。但是在这个过程中研发人员提交代码不受任何限制。目前一年来,进行了可能不下10多次的受控,能通过的版本甚少,测试也很郁闷!
现在部门经理让我提出一些改进的建议,我考虑了一下,进流程改为下面的,还请高手指点指点,因为我本身是STE所以这方面了解不多!

首先由PM提出受控,由Test Leader 确定测试时间,SCM打tag生成版本(或者建立受控库),测试版本修改bug,定期生成版本直到test leader确定的测试时间到期。在这段时间内的版本中选取较好的版本纳入受控!

请大家对这个改进的流程多指点一下,小弟先谢过了!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-2-2 13:08:58 | 只看该作者
项目本身就应该受控,不是PM来提出,强制受控.所有都受控.
PM申请测试,由TL安排测试时间,SCM从配置库按PM给出的版本号得出测试版本的安装程序,交付测试.发现BUG后,开发修改,应该生成新的版本,提交复查,SCM从配置库得下该版本的安装程序(或监督开发在server端升级),继续测试.测试通过,得到一个稳定版本,赋予比较特殊的版本号,以便标识.

这是我的个人看法,另外我对你所说的纳入受控,包含些什么东西不太清楚??
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-2-2 15:09:19 | 只看该作者
首先要明确的是,代码(版本)因何而受控,达到什么样的条件就可以受控,这对于确定什么时候受控很有必要。

还有一点就是,版本不能在测试之前决定是否受控,这是显而易见的。

我不知道你们公司的PM是什么样的一个职能,如果PM能详细了解代码的情况(参与编码),由他提出并决定受控是可以的,如果不是最好也问一下RD以及其manager的意见并反馈给PM。

流程:
1、PM询问版本是否可以进行受控;
2、问RD或了解Code的相关人员,得到反馈信息;
3、出build经QA测试;
4、依据测试结果由PM或RD决定版本是否受控。

[ 本帖最后由 Nio 于 2007-2-2 15:13 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2007-2-2 23:04:20 | 只看该作者
先谢谢上面两位大大的回复!

公司所谓的受控就是由于市场需要稳定的版本,进行的一个得到版本并且将代码和相关资料控制起来的过程。

流程:
1、PM询问版本是否可以进行受控;
2、问RD或了解Code的相关人员,得到反馈信息;
3、出build经QA测试;
4、依据测试结果由PM或RD决定版本是否受控。

目前的流程基本就是这样的。
我们公司项目经理就是研发的leader,应该对代码还是比较了解。但是coders提交是任何时候不受限制的,所以最后的效果是经常最后认定不受控。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-2-3 10:27:26 | 只看该作者
规划好配置库的开发流程吧。
    主线上开发,建立一条发布分支,为发布的版本打tag(比如1.0版本本),然后给测试人员测试
你继续在该版本上开发新的版本(比如2.0),如果说版本1.0存在很多bug,这时候为1.0版本在建立一条修正bug的分支,然后基于这条生成修正bug的版本。如果先给1.0版本添加新的功能,但不影响后续开发的新版本,可在1.0版本的基础建立一条功能分支。
     如果说,1.0版本中的一些bug,在2.0版本也需要修改,那么可以将1.0修正某个bug的版本合并进来。

[ 本帖最后由 smallfish382 于 2007-2-3 10:33 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-2-6 10:08:27 | 只看该作者
楼上说的虽然是一个很不错的方法,可以解决一些问题,但在实际工作中不能这么操作。

建立分支(branch),不能以要修改的BUG为基准;通常的做方法是以功能界面改变为基准。如果从某个版本开始,功能有了变化或界面有了变化就建一个分支,这样对开发过程的控制会更有效。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-2-7 22:28:08 | 只看该作者
我觉得应该有一个主线,所有的改变都应该合并到主线中去。如果用户有需求,那么规定一个时间什么时候交送给用户,那么在这个时间段之间,分出两个时间段,其中一个时间段交给开发组去修改,另一个时间段留给测试组去测试。当开发要提交测试时,首先要申请一个Tag,如果通过,则由SCM来标记这个Tag,然后在建立一个对应的分支,测试组在这个分支上测试,开发组也在这个分支上修改测试出来的bug。当然开发组也要把这个bug合并到主线上,也可以继续在主线上加新的功能。
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-2-8 10:30:42 | 只看该作者
楼上的这位兄弟,说的再清楚点好不?呵呵~~

如果因不同客户的不同需求而改变了软件原先设计的功能或界面,通常是不在Main tree上只接改的,而是新建一个Branch。
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2007-3-1 10:11:31 | 只看该作者
关注
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2007-3-19 17:10:52 | 只看该作者
继续讨论啊,我还是有点不清楚
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2007-4-12 17:41:19 | 只看该作者
所有的版本控制应该按照配置管理计划中进行的进度进行监控,什么时候生成基线,什么时候进入测试,如果有不符合的地方要进行变更
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-4-27 19:44 , Processed in 0.075288 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表