2011-05-12 55 views
3

我們的每個團隊成員都運行各種測試,並確保在推送到中央/源存儲庫之前,所有測試都通過。在這種情況下我們是否仍然需要CI服務器?我們有不同的開發和生產環境(mac vs linux)。還有CI服務器的一個簡單理由,如果我們在Linux上設置CI服務器,那就是我們正在像環境一樣在更多生產環境中運行測試。但是還有一些堅實的理由還有嗎?如果我們在推動之前通過所有測試,我們是否真的需要持續集成?

感謝

+0

這取決於。當有人檢查代碼並打破構建時,你是否想盡快知道? – 2011-05-12 05:46:35

回答

2

我覺得你在不斷融合在你的問題的最大好處之一暗示。它使您有機會確保代碼根據您的源代碼管理系統信息庫中的內容檢查並按預期運行。如果你在一個團隊中工作,一個人在他們的本地環境中進行一些改變並不罕見,這些改變可能依賴於另一個資源(也許是一個dll),他們忘記檢查到源代碼控制庫,你的ci服務器顯然會失敗,但應用程序將編譯和測試將在該開發人員機器上運行。

+0

+1。我經常聽到這叫做「哥們打造」。自動夥伴構建非常重要。我已經看到了每一個團隊所犯的錯誤,而這些錯誤可能已經(或已經)被解決了。 – 2011-05-12 06:09:56

+0

謝謝。在這種情況下,CI服務器肯定會是一個福音。 – bikashp 2011-05-12 06:18:40

0

安德魯有一個好點。爲了擴展這一點,許多CI軟件包可以用於不僅僅是構建。您可以使用它來自動化許多開發過程。

  • 部署到共享環境
  • 運行自動化測試
  • 給予定期自動測試狀態報告(例如每天)
  • 存檔建立

退房維基百科上的CI的文章:

http://en.wikipedia.org/wiki/Continuous_integration#Recommended_practices

相關問題