(同步發表於 Cepave Blog)
敏捷開發關鍵的一環:持續集成
隨著軟體開發複雜度的不斷提高,團隊開發成員間如何更好地協同工作以確保軟體開發的質量已經慢慢成為開發過程中不可迴避的問題。尤其是近些年來,敏捷軟體開發逐漸成為顯學,如何能在不斷變化的需求中快速適應和保證軟體質量顯得尤其重要。
持續集成(Continuous Integration)作為敏捷開發重要的一步,其目的在於讓產品快速迭代的同時,盡可能保持高質量。每一次程式碼更新,都要通過自動化測試來檢測程式碼和功能的正確性,只有通過自動測試的程式碼才能進行後續的交付和部署。它倡導團隊開發成員必須經常集成他們的工作,甚至每天都可能發生多次。而每次集成都是通過自動化的構建來驗證,包括自動編譯和測試,從而盡快地發現集成錯誤,讓團隊能夠更快的開發產品。
持續集成的特點
* 週期性的自動化過程: 從拉取程式碼、編譯構建、運行測試、結果記錄、到測試統計
* 需要有專門的集成伺服器來執行集成構建,常見的如:Jenkins, Travis CI
* 需要有程式碼托管工具支持,如:Git, SVN
持續