在不理解具體需求的情況下,就推薦哪個工具合適是非常冒失的。每個服務器都有許多優秀的特性,而且就像我在開始時所提到的,僅僅因為某個 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 服務器,那么選擇工作就應當很容易了。請繼續關注下個月的文章,我將介紹在開發項目中經常會遇到的構建問題。
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/