您的位置:软件测试 > 开源软件测试 > 开源配置管理工具 > HUDSON
Hudson与持续集成
作者:网络转载 发布时间:[ 2014/2/7 17:03:20 ] 推荐标签:Hudson 持续集成

持续集成(Continuous Integration,CI)是持续地编译、测试、检查和部署源代码的过程。在许多持续集成环境中,这意味着每当源代码管理库中的代码发生改变时,都要执行新的构建。CI 的好处很明确:经常组装软件可以大大提高在早期发现缺陷的可能性,而缺陷在早期还不复杂,容易解决.

持续集成(CI)是一种实践,旨在缓和和稳固软件的构建过程。CI能够帮助您的开发团队应对如下挑战:
软件构建自动化:使用CI,您只要按一下按钮,它会依照预先制定的时间表,或者响应某一特定事件,开始进行一次构建过程。如果您想取出源码并生成构件,该过程也不会局限于某一特定IDE、电脑或者个人。

持续自动的构建检查:CI系统能够设定成持续地对新增或修改后签入的源代码执行构建,也是说,当软件开发团队需要周期性的检查新增或修改后的代码时,CI系统会不断要求确认这些新代码是否破坏了原有软件的成功构建。这减少了开发者们在手动检查彼此相互依存的代码中变化情况需要花费的时间和精力(说直接一点也是钱啊,呵呵)。

持续自动的构建测试:这个是构建检查的扩展部分,这个过程将确保当新增或修改代码时不会导致预先制定的一套测试方案在构建构件后失败。构建测试和构建检查一样,失败都会触发通知(Email,RSS等等)给相关的当事人,告知对方一次构建或者一些测试失败了。

构件生成后续过程的自动化:一旦自动化检查和测试的构建已经完成,一个软件构件的构建周期中可能也需要一些额外的任务,诸如生成文档、打包软件、部署构件到一个运行环境或者软件仓库。只有这样,构件才能更迅速地提供给用户使用。

CI系统的基本结构
 该系统的各个组成部分将按如下顺序来发挥作用:
开发者检查新增和修改到源代码仓库后的代码。
CI服务器会为每一个项目创建了一个单独的工作区。当预设或请求一次新的构建时,它将把源代码仓库的源码存放到对应的工作区,在哪里构建执行到哪个目录下。
CI服务器会在新近创建或者更新的工作区内执行构建过程。
一旦构建完成,CI服务器会在一个新的构件中选择性地执行原先定义的一套测试。如果构建失败,相关责任人将会通过电子邮件、即时短信或者其他的方式获取到(失败)通知。
如果构建成功,这个构件会被打包并转移到一个部署目标(如应用服务器) 和/或存储为软件仓库中的一个新版本。这个如软件仓库可以是CI服务器的一部分,也可以是一个外部的仓库,诸如一个文件服务器或者像Java.net、SourceForge分发的一个有效网址。源代码仓库和构件仓库是可以分开的,实际上它可以利用一些根本没有包含任何源代码控制系统(CVS、SVN、CSS等等)的CI服务器。
CI服务器通常会通过某种控制台来进行项目的配置和调试,并且根据请求响应相应的操作,诸如即时构建、生成报告,或者检索构件。

Hudson 是一种革命性的开放源码 CI 服务器,它从以前的 CI 服务器吸取了许多经验教训。Hudson 吸引人的特性之一是它很容易配置:很难找到更容易设置的 CI 服务器,也很难找到开箱即用特性如此丰富的 CI 服务器。Hudson 容易使用的第二个原因是它具有强大的插件框架,所以很容易添加特性。例如,一个 Hudson 插件可以随时间的推移跟踪 FindBugs 和代码覆盖。它还可以报告测试结果的趋势(来自 JUnit 或 TestNG)以及构建结果和对应的执行时间。

软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd