持續集成可以說是軟件開發過程中非常重要的工作。作為一種軟件開發實踐,持續集成即團隊開發成員經常集成他們的工作,通過每個成員每天至少集成一次,也就意味著每天可能會發生多次集成。每次集成都通過自動化的構建(包括編譯,發布,自動化測試)來驗證,從而盡早地發現集成錯誤。那么持續集成具體能帶來哪些方面的作用呢?
中培偉業《軟件自動化測試與持續集成實踐》培訓專家劉老師指出,持續集成主要包括以下5個方面的作用
第一個作用: 減少風險
通過每天集成變化的代碼并發布,我們將減少項目的風險。這樣做將可以推動盡早發現缺陷;盡早估量軟件的質量;盡早排除假設。
盡早發現缺陷并修復缺陷軟件開發中每天持續集成,并進行測試和評審,這些過程有許多的機會發現缺陷。
盡早估量軟件質量 通過在持續集成中實施持續測試和評審的活動,軟件產品的健康屬性,例如復雜性,將被全程跟蹤。
盡早排除假設通過在一個純凈的環境中,用同樣的腳本和過程構建和測試軟件,開發人員可以減少假設:是否使用了不正確的第三方的庫,是否使用了不同的環境參數等。
第二個作用:減少重復的過程
通過減少重復性的動作來節省時間,成本,提高效率。在軟件的開發過程中,有許多重復性的活動,這些活動包括代碼編譯,數據庫集成,測試,評審,部署,信息反饋等。通過自動化的持續集成,你將獲得如下能力:
任何時候都可以執行一致的流程;
每個開發過程的步驟都是依次執行的;在構建腳本,將依次執行編譯,自動測試等動作。
在版本控制庫中,當代碼提交發生時,構建過程自動執行。
通過減少在重復性工作上的勞動力,讓開發工程師做更多有價值的工作。
第三個作用:產生可部署的軟件
持續集成可以讓項目組在任一點上及時提交可以安裝的軟件包。這是持續集成最可看見的一個益處。我們可以無休止地討論改善軟件質量和減少風險,但是對用戶或者客戶來說,可以安裝的軟件包是最切實可行的
第四個作用:使得項目更加透明
持續集成能夠更好地呈現項目各成員的工作,從而使整個項目編的更加透明。
第五個作用:建立項目信心
持續集成實際上就是一種成果的交流和展示,在集成過程中能夠更好的集思廣益,從而提升團隊對項目的信心。