前言
众所周知,Hudson一直以来都被认为是JAVA平台流行,使用得广泛的开源持续集成系统了,它以其人性化的界面功能,丰富的插件,高度的可扩展性,强大的分布式构建能力赢得了广泛称赞。
然而,正是因为Hudson在JAVA业界表现,使得国内很少有人对它在其他语言领域的表现有所了解。其实Hudson本质上只是一个 CI(continuous-integration)系统,通过其丰富的插件和高度的扩展能力,它同样可以在其他众多的语言领域有着优异的表现,昨天正好为我们组的Ruby页面自动化测试脚本搭建了Hudson的持续集成环境,所以这里简单谈一下我是如何做到的。
搭建Hudson的windows client
要做Ruby页面自动化的测试,目前的解决方案是使用开源框架——Watir,而Watir只能运行在windows环境下,而我们的Hudson 服务器是搭建在Linux环境的,难道要再部署一台windows环境下的Hudson服务么?不,再部署一台只会带来管理的混乱,我想到了使用 Hudson的分布式构建的功能,
分布式构建是Hudson非常重要的特性之一,这一特性让Hudson有能力管理数量庞大的项目,这些项目在构建(包括编译,测试,打包,部署等)可以利用分布式的特性分别在不同的client上运行,同时Hudson还提供了丰富的对这些client进行管理的功能,包括资源监控,以及环境变量设置等等。
OK,说了很多废话,其实是想让大家了解一下为什么我要用这种方式。下面开始是方法:
前提:client机器已经可以独立的运行ruby页面自动化测试脚本
步骤:
1. 进入页面:在要配置的client机器上,进入Hudson的nodes界面,一般连接为xxx/ hudson/computer/
2. 新建节点:点击左侧“新建节点”,输入节点名称,选中Dumb Slave,后点击OK,如下图所示:
3. 节点配置,如下图:
配置完成,点击“Save”。