在不理解具体需求的情况下,就推荐哪个工具合适是非常冒失的。每个服务器都有许多优秀的特性,而且就像我在开始时所提到的,仅仅因为某个 CI 服务器最适合某人,并不意味着它必然满足您的需求。
如果寻找的是易于使用的工具,请选择 Continuum。如果扩展性、灵活性和繁荣的用户社区对您很重要,请使用 CruiseControl。如果需要 Web 管理和扩展的用户支持选项,请考虑 Luntbuild。围绕这些服务器已经形成了开发“生态”系统,所以如果遗漏了某个特性,一般都会找到适合需求的扩展。
在表 2 中,是我根据自己的使用经验为所考察的每个 CI 服务器总结的特性、可靠性、寿命、目标环境和易用性这五个核心方面:
表 2. CI 服务器五个核心方面
特性 | 可靠性 | 寿命 | 目标环境 | 易用性 | |
---|---|---|---|---|---|
Continuum | 支持 Ant、Maven1 和 Maven2,以及 shell。 使用 XML-RPC 和 SOAP 的远程管理能力;支持 Maven2;用户群;期待未来有附加的报告和反馈机制——不需要修改代码。 |
在 2005 年发布。期待通过它与 Apache 的关系,得到 Continuum 的更多消息。 | 通过 Apache Maven 的良好用户社区支持产品在市场上仍很新。 | Linux、Mac OS X、Solaris 和 Win32。 | 优秀的易用性和安装。 |
CruiseControl | 许多版本控制集成和扩展性。通过 JMX 控制的远程访问。多种反馈机制,包括 RSS、X10、Jabber 以及其他。 | 在 2001 年发布。在三个服务器中,CruiseControl 在开发中应用得最多。 | 繁荣的用户社区;每个迹象都表示 CruiseControl 还会存在一段时间。 | Windows 和 Unix;任何能运行 Java JVM 的平台。 | 易于安装。有些人宁愿不修改 XML 配置文件。 |
Luntbuild | 项目依赖项、标号、安全性组和并行开发。 | 在 2004 年发布。Luntbuild 提供扩展的用户支持选项。 | 用户社区不如 CruiseControl 活跃。 | 能够运行 JVM 和 servlet 容器的系统。 | 易于安装,但用户界面/工作流需要大大改进。基于 Web 的配置(不需要修改配置文件)。 |
我在本文中只评估了三个服务器;还有许多服务器可能更适合您的需求。但是既然您理解了如何挑选 CI 服务器,那么选择工作就应当很容易了。请继续关注下个月的文章,我将介绍在开发项目中经常会遇到的构建问题。
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/