论坛首页 综合技术论坛

持续集成工具的选择

浏览 51411 次
精华帖 (5) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-10-18  
jansel 写道
不知道大家真正的项目有没有把CI用好,看大家的评论好像自己的项目用的很好。

CI这个东东是要用,但是也应该添加一些惩罚措施,比如谁的COde编译不通过允许修改一次,第二次不过就要罚钱了。要是没有惩罚措施,CI这个东东就完全取决于个人意愿了。

有些程序员可能会想:编译不通过就不通过,反正又不是发布阶段。

要是碰到了外包项目,CI的价值就更加体现不出来了,代码都写不完了,谁还去管CI呢?

所以CI是不是best practise 这个还真的要看场景。


惩罚是很扯的一件事情。问题关键是工程师们内心是不是关心Build失败这件事情。惩罚也许表面会达到效果,但是如果你作为被惩罚对象或者可能被惩罚的对象, 心里会爽吗?这种管理是没有人性的。所以关键是让工程师真正的接受CI。这需要很多的工作, 例如宣传、知识分享等等。而且要做的好。那种干巴巴的培训效果不大。
11 请登录后投票
   发表时间:2009-10-19  
badqiu 写道
gigix 写道
andyyehoo 写道
continuum为啥不提呢?上家公司用continuum+maven,基本上实现了所有需要的功能了,效果也不错,配置稍微复杂一点而已。CruiseControl就算了,3年前就那个样子,现在还是这个样子,UI太丑,实在下不了口

嗯,请访问你的cruisecontrol的 /dashboard


一直用cruisecontrol,只注重功能实用,谁也不会整天叮着持续集成看,能够邮件通知构建结果就行了,不管美丑,所以还是比较喜欢看/cruisecontrol视图。

/dashboard就界面好看点,根本没有多少功能提升,瞎整。


cruisecontrol,纵向比,比3年前是好点,不过横向比,还是差……配置烦琐方面我不太确定有没有提升,反正有Hadson和Continuum了,我没有兴趣去尝试一个旧的酸萝卜。

大部分人是知道构建结果就可以了,不过配置管理员还是需要经常访问这个界面的,例如查看更加详细的report,例如测试用例的执行结果历史,测试用例的单元覆盖率,等等…………好的CI,不仅仅是一个配置了,就整天发送邮件的系统而已。
1 请登录后投票
   发表时间:2009-10-19  
引用

您做过开发么?
难道是我孤陋寡闻?"提交前先update" 这种事务性操作,据我所知计算机还不会做,你打算让计算机去提交什么?


提交前先update的事情是这样的,每个程序员每天把开发密切的项目,更新一次,作为上班前第一件事,是个好习惯,如果做个计划任务,上班到前就执行一次,那就更好。

至于这样做后,一天的开发中,代码冲突的事情,就让scm系统来提示好了,提交代码前先update一次这样的做法,无论如何不是best practice
0 请登录后投票
   发表时间:2009-10-19  
elvewyn 写道
jansel 写道
不知道大家真正的项目有没有把CI用好,看大家的评论好像自己的项目用的很好。

CI这个东东是要用,但是也应该添加一些惩罚措施,比如谁的COde编译不通过允许修改一次,第二次不过就要罚钱了。要是没有惩罚措施,CI这个东东就完全取决于个人意愿了。

有些程序员可能会想:编译不通过就不通过,反正又不是发布阶段。

要是碰到了外包项目,CI的价值就更加体现不出来了,代码都写不完了,谁还去管CI呢?

所以CI是不是best practise 这个还真的要看场景。


惩罚是很扯的一件事情。问题关键是工程师们内心是不是关心Build失败这件事情。惩罚也许表面会达到效果,但是如果你作为被惩罚对象或者可能被惩罚的对象, 心里会爽吗?这种管理是没有人性的。所以关键是让工程师真正的接受CI。这需要很多的工作, 例如宣传、知识分享等等。而且要做的好。那种干巴巴的培训效果不大。


这种还是要在公司形成一个气氛才行,敬业的气氛,如果有这样的氛围和素质,收到build失败的邮件,那个人都会很不好意思的了,不需要惩罚……

当然,对于不少人来说,还是没这样的习惯,小惩罚……例如,请大家全体吃雪糕之类的,嘻嘻哈哈中而过,我觉得是好团队的习惯,人都是会犯错误的,系统大了,跑全部的测试用例很耗时间的话,难保重构就算过了自己的单元测试,到了CI服务器就能全部通过的,如果说到罚钱扣工资,这个大家都不太舒服,请个小客,我觉得应该也是个Best Pratice。
1 请登录后投票
   发表时间:2009-10-21   最后修改:2009-10-21
.....认真了,我输了
0 请登录后投票
   发表时间:2009-10-21   最后修改:2009-10-21
.....认真了,我输了
0 请登录后投票
   发表时间:2009-10-21  
持续集成是最佳实践没错,但也得在完善自动化测试之后才能发挥作用,否则就变成持续编译了。
虽说也有那么点儿作用,但是这种放空枪的事儿很可能会让不熟悉敏捷的团队产生抵触情绪。
1 请登录后投票
   发表时间:2009-10-30  
同意楼上,团队对CI的需求不可能脱离测试用例而存在。
0 请登录后投票
   发表时间:2009-11-06   最后修改:2009-11-06
工具不是一切 持续集成 不是万能

关键在于团队建设管理规范

人才是一切之本,万恶之源
0 请登录后投票
   发表时间:2009-12-08  
楼上的在说废话
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics