持續整合(一)

2021-06-19 21:21:36 字數 1001 閱讀 8602

一、提出

整合軟體

的過程不是新問題,如果專案開發的規模比較小,

比如乙個人的專案,如果它對

外部系統

的依賴很小,那麼軟體整合不是問題,但是隨著軟體專案複雜度的增加(即使增加乙個人),就會對整合和確保

軟體元件

能夠在一起工作提出了更多的要求

-要早整合,常整合

。早整合,頻繁的整合幫助專案在早期發現專案風險和質量問題,如果到後期才發現這些問題,解決問題代價很大,很有可能導致專案延期或者專案失敗。

二、定義

大師martin fowler對持續整合是這樣定義的:持續整合是一種

軟體開發實踐

,即團隊開發成員經常整合他們的工作,

通常每個成員每天至少整合一次

,也就意味著每天可能會發生多次整合。每次整合都通過自動化的構建(包括編譯,發布,

自動化測試

)來驗證,從而盡快地發現整合錯誤。許多團隊發現這個過程可以大大減少整合的問題,讓團隊能夠更快的開發內聚的

軟體。三、價值

1、減少風險

一天中進行多次的整合,並做了相應的測試,這樣有利於檢查缺陷,了解

軟體的健康狀況,減少假定

2、減少重複過程

3、任何時間、任何地點生成可部署的軟體

持續整合可以讓您在任何時間發布可以部署的

軟體。從外界來看,這是持續整合最明顯的好處,我們可以對改進

軟體品質和減少風險說起來滔滔不絕,但對於客戶來說,可以部署的軟體產品是最實際的資產。利用持續整合,您可以經常對

源**進行一些小改動,並將這些改動和其他的**進行整合。如果出現問題,專案成員馬上就會被通知到,問題會第一時間被修復。不採用持續整合的情況下,這些問題有可能到交付前的

整合測試

的時候才發現,有可能會導致延遲發布產品,而在急於修復這些缺陷的時候又有可能引入新的缺陷,最終可能導致專案失敗。

四、常用工具

持續整合簡介

想起我剛畢業後,進入一家以軟體外包為主的外企做開發。它使用傳統的瀑布式的軟體開發流程,沒有使用任何的敏捷實踐。我每天上班開啟電腦,拿到自己的任務,然後從版本控制更新 開啟工程按下build,準備進行今天的開發任務。突然發現build失敗 通常是編譯不過 大喊一聲 誰break build啦 也沒有人...

持續整合 CI

引子 記得剛加入趨勢開始開發工作 的時候曾被告知,趨勢有一套auto build的系統,會每天夜裡自動把當天check in的 進行構建,生成qa可測試 的build。每個rd都得小心提交code,因為專案結束的時候會看auto build的失敗率。可是構建失敗總是在所難免,尤其是每次要提交cand...

持續整合簡介

一 持續整合 持續整合是一種軟體開發的實踐,即團隊開發成員經常整合他們的工作,通常每個成員每天至少整合一次,也就意味著每天可能會發生多次整合。每次整合都通過自動化的構建 包括編譯,發布,自動化測試 來驗證,從而盡快地發現整合錯誤。許多團隊發現這個過程可以大大減少整合的問題,讓團隊能夠更快的開發內聚的...