SCM(software configuration management) 在测试阶段怎么控制不允许开发人员提交代码?
我们公司只是发封邮件说什么时候build,要开发人员把新代码提交上去,测试只是些零散的功能测试, 可是在测试过程中(build前),开发人员依然可以提交代码,这样的话测试人员拿到的并不是一个绝对“干净”的代码。
我认为在测试的时候(测试人员进行功能测试、整合测试、性能测试 这段时间内)应该不允许开发人员提交代码, 不知道大家的公司是怎么管理的? 新建一个分支,在这个分支上测试,如果有bug,开发也在这个分支上提交代码?
测试结束,这个分支就可以直接转成一个tag ?
[解决办法]
采用分级提交制度,开发人员有一个独立的源码库(开发库),当经过Code Review之后,项目经理把开发库的代码再提交到正式库。
测试人员针对正式库进行测试。
[解决办法]
不允许测试人员纠结到代码单元去想当然地测试。测试人员必须按照测试用例来测试,而测试用例是基于产品设计的(而不是程序开发的),因此它不是变来变去的。
你所担心的,你认为程序员实现功能代码会“变来变去的”,于是以为测试用例和测试方法——模拟用户行为等等——也是变来变去的,这充分暴露了你们这些测试人员喜欢多管闲事、对开发人员指手画脚而不是去测试该测试的东西。
如果按照正规的测试用例来测试,那么顶多是在“某某某测试用例当前是否Open”这个上面有个沟通,否则根本不存在测试人员的测试方法跟开发人员的实现方法冲突的问题!
[解决办法]
一般都分为两个库,一个是开发库,一个测试库。
开发到了一定的阶段,某个里程碑,就会统一转到测试库,测试人员开始测试。
开发人员继续开发。