欢迎来到 wabc.cc 官方网站!

广州软件测试培训课程 软件测试之持续集成

来源:推荐文章 / 时间:2025-12-20

今天中软卓越广州软件测试培训课程分享软件测试之持续集成知识。持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。目前大多数的公司里都会有这样或者那样的使用。

1.jpg

选择一些Open Source的工具,如CruiseControl,Hudson,LuntBuild等,或者购买更好服务,更强功能的商业产品,如TeamCity,QuickBuild等,还有一些公司会选择自己实现,如Cron+Ant/Maven/Make等。

1、持续集成与敏捷编程

在敏捷领域中,测试驱动和持续集成被称为敏捷编程的两大基石,于是乎,很多人的概念里就是持续集成是为了实现敏捷编程的。这是一个错误的认识。实际上,早于敏捷编程概念的提出,持续集成作为一个best practice就已经被很多公司采用了,只不过作为一个概念,则是由Martin大叔为了推进敏捷所倡导并由此风靡起来。持续集成本身只是一种practice,并不被什么开发模型所限制,在任何一种开发模型中都可以采用,也可以运行得非常理想。

2、持续集成还是阶段集成

有很多人说,我不做持续集成,照样工作的很好。因为我们一个(小)阶段出一个版本,照样控制得非常好。我得恭喜你,首先持续集成也好,阶段集成也罢,你做了,做了就好,比没有做要好很多,也使你的项目管理上了轨道了。这两者之间的区别仅是频率而已。

那么究竟那种方式更加理想,更加符合项目的开发和管理呢?对于一个微型程序来说,阶段式的集成或许是最佳方法。何谓微型程序,他说就是那种两三个类的程序,而你又很走运的话,那么阶段式集成就可以是你的最佳方法了。当然,这位老兄是个老美,我们也都知道老外嘛,都比较笨一点,所以呢,他说微型程序,对于我们拥有5000年文明的中国人说,可以再扩大点吧,对于一个小型项目,就是那种二三十个类的项目,也许使用阶段集成也不会出啥子问题吧。不过,你要真的是懒到连个阶段集成都不愿意做的话,那么你至少求求上帝保佑你的项目一切顺利。

3、那么为什么要做持续集成

很多人肯定非常不苟同我的看法,他们认为即使没有做持续集成,甚至没有做阶段集成,但是项目一样按时的完成,甚至提前完成,而且照样完成的非常理想,老板满意,客户满意。而做持续集成,无非就是动不动收到一封邮件,说这个build成功了,那个build失败了,不过就是一持续编译罢了,我自己打个命令编译一下,不就知道了吗?要做个daily build,我还要去set up,还要花力气去配置,效果也不见得好到什么地方去。

对于这样一些问题,我想首先我们还得搞清楚,究竟为什么我们要去做持续集成,持续集成究竟可以给我们带来什么好处。

① 易于定位错误。也就是当你的持续集成失败了,说明你新加的代码或者修改的代码引起了错误,这样你很容易的就可以知道到底是谁犯了错误,可以找谁来讨论。

及早在项目里取得系统级的成果。因为代码已经被集成起来了,所以即使整个系统还不是那么可用,但至少你和你的团队都已经可以看到它已经在那了。

② 改善对进度的控制。这点非常明显,如果每天都在集成,当然每天都可以看到哪些功能可以使用,哪些功能还没有实现。如果你是程序员,你不用在汇报任务的时候说我完成了多少百分比而烦恼,而如果你是项目经理的话,那么你也不再烦恼程序员说完成了编码的50%到底是个什么概念。

③ 改善客户关系。理由同上。

④ 更加充分地测试系统中的各个单元。这也是我们常讲的Daily Build与Smoke Test相结合带来的绝大好处。

⑤ 能在更短的时间里建造整个系统。这点恐怕要你实施以后才能得出结论。就我们而言,持续集成并没有为每个项目都缩短时间,但却比没有实施时,项目更加可控,也更加有保证。

⑥ 随着时间的推移,持续集成带来的更多好处,也逐渐被认识到了,比如说:有助于项目的开发数据的收集。比如说,项目代码量的变化,经常出错的Tests,经常出错的source code,等等。

⑦ 与其它工具结合的持续代码质量改进。如与CheckStyle, PMD, FindBugs, Fxcop等等等等的结合。

⑧ 与测试工具或者框架结合的持续测试。如与xUnit,SilkTest, LoadRunner等等的结合。

便于Code Review。在每个build里,我们都可以知道与前一个build之间有什么改动,然后⑨ 针对这些改动,我们就可以实施Code Review了。

⑩ 便于开发流程的管理。比如说,要把一个开发的build提交给测试组作测试,测完满意了,再提交到发布组去发布。

4、怎么做持续集成

持续集成有很多很多的好处。可是持续集成要做好的话,本身就有很多的讲究。从持续集成工具的选择到持续集成具体实施,每一点都可能影响到你使用持续集成的效果。持续集成不是持续编译,也不是仅仅用来发发邮件的工具而已。

今天广州中软卓越软件测试培训课程软件测试之持续集成已经讲解完毕。去企业,学习企业需要的编程技能!广州中软卓越软件测试培训,真实企业背景,送你企业入场券!

广州中软卓越课程:http://gzetc.com.cn/

相关产品

在线客服
微信联系
客服
扫码加微信(手机同号)
电话咨询
返回顶部