亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

持續(xù)集成(Continuous Integration),

系統(tǒng) 3307 0

持續(xù)集成( Continuous Integration

?

? 持續(xù)集成( Continuous Integration ),縮寫為 CI
p 是一項 軟件開發(fā)實(shí)踐 ,其中團(tuán)隊的成員經(jīng)常集成他們的工作,通常每個人每天至少集成一次 —— 這導(dǎo)致每天會 集成多次 。每次集成是通過 自動化的構(gòu)建 (包括測試)進(jìn)行的,目的是盡快地檢查 集成錯誤 。許多團(tuán)隊發(fā)現(xiàn)這樣做能夠減少大量的集成問題,讓團(tuán)隊能夠更快的開發(fā)一致的軟件。
p 自動化的構(gòu)建: 獲取版本、編譯、單元測試、靜態(tài)檢查、集成測試、系統(tǒng)測試、軟件部署、信息反饋等全部自動化。

持續(xù)集成是沒有任何爭議的業(yè)界優(yōu)秀實(shí)踐

?

版本控制庫、 CI( 持續(xù)集成 ) 服務(wù)器、構(gòu)建腳本、反饋機(jī)制

?

開發(fā)人員日常工作步驟:

開發(fā)人員基于最新版本開發(fā) 1 個新特性
從配置庫上將更新過的文件同步到本地,確保本地代碼和庫文件是最新的
在本地完成編譯、單元測試、代碼靜態(tài)檢查
準(zhǔn)備提交代碼前再次從配置庫上將更新過的文件同步到本地
再次在本地完成編譯、單元測試、代碼靜態(tài)檢查
成功后向配置庫提交代碼,自動觸發(fā) CI 集成服務(wù)器的一次構(gòu)建,構(gòu)建失敗后要立即修復(fù)直到構(gòu)建成功
推薦采用令牌方式提交代碼

?

?

本地構(gòu)建是開發(fā)人員自我質(zhì)量保證、持續(xù)集成質(zhì)量和版本質(zhì)量的基礎(chǔ)

?

?

? 微軟
p 持續(xù)集成人員占開發(fā)人員的 1% ,如微軟 2000 人的 windows 部門,有 20 人專職做持續(xù)集成
p check in 是頭等大事 ,認(rèn)為對 check in 都不認(rèn)真,那么就沒什么事能認(rèn)真作了。 如果 check in 的代碼 Build (持續(xù)集成)不通過, 24 小時任何時間通知,必須回公司修正; 2 Build 不通過會導(dǎo)致責(zé)任人在項目組壓力非常大,甚至呆不下去。
? Ericsson
p 愛立信 CTO HAKAN 認(rèn)為愛立信產(chǎn)品 交付周期縮短 50% ,效率不斷提升的三個 法寶 Daily build (持續(xù)集成) Streamline 以及 One track
p E 公司版本構(gòu)建 3 次不通過開發(fā)經(jīng)理將被轉(zhuǎn)崗!
? 業(yè)界 持續(xù)集成招聘 崗位 是軟件開發(fā) 崗位 0.7%
p 業(yè)界招聘信息看,持續(xù)集成崗位的發(fā)展速度是軟件開發(fā)崗位的 5 倍,招聘崗位是軟件開發(fā)的 0.7%

?

?

? 開發(fā)效率提升 30%
? 開發(fā)成本節(jié)約 30
? 錯誤減少 30%
? 構(gòu)建速度提升 100%
? 配置效率提升 40%
? 發(fā)布頻率提升 40%
? 大型項目的效率提升更大

全球 81.7% 的軟件項目采用持續(xù)集成

?

?

? 每天生成可部署的軟件,避免產(chǎn)品最終集成時爆發(fā)大量問題
p 缺陷的檢測和修復(fù)變得更快
p 軟件的健康程度可以度量
? 團(tuán)隊成員每天都看到自己的可工作的軟件成果,增強(qiáng)自信心

?

? 持續(xù)集成可以 真實(shí) 反映產(chǎn)品 開發(fā)進(jìn)度
p 可以工作的軟件是衡量進(jìn)度的唯一標(biāo)準(zhǔn)。
p 在傳統(tǒng)的集成模式下, 最后 10% 的工作仍需要 90% 的時間完成
p 實(shí)施持續(xù)集成的團(tuán)隊,進(jìn)度通過特性的完成率來表示, 90% 的完成率意味著 90% 的特性開發(fā)測試完畢。
? 持續(xù)集成是產(chǎn)品開發(fā)的 心跳 ,是產(chǎn)品質(zhì)量的 晴雨表
p 開發(fā)人員每天的工作都立刻合入版本,構(gòu)建結(jié)果快速反饋給項目經(jīng)理,項目過程質(zhì)量一目了然,管理者可以度量真實(shí)的進(jìn)度和質(zhì)量,確定風(fēng)險,并積極地進(jìn)行風(fēng)險控制。
? 增強(qiáng)開發(fā)人員 自信心
p 每次代碼修改,團(tuán)隊成員都知道自己的軟件遵守編碼標(biāo)準(zhǔn)和設(shè)計標(biāo)準(zhǔn),通過測試驗證,往前邁進(jìn)的每一步都非常堅實(shí)。
p 任務(wù)越小,工作越輕松。

?

?

持續(xù)集成! = 持續(xù)編譯

持續(xù)集成! = 工具 + 技術(shù)

持續(xù)集成!只是開發(fā)人員的事情

?

? 任何一點(diǎn)集成方面的努力都是值得肯定的 , 哪怕即使只是持續(xù)編譯,只要保證每天都能夠編譯通過,也已經(jīng)具有很大的價值了。
? 持續(xù)集成關(guān)鍵是: 持續(xù)測試 。即持續(xù)集成在很大程度上依賴測試策略和自動化程度。

?

?

? 持續(xù)集成的內(nèi)涵更多是軟件開發(fā)理念,絕非只是工具和技術(shù)
p 持續(xù)集成的技術(shù)和工具能做的就是自動提供快速反饋
p 團(tuán)隊收到反饋之后的行為 , 才是降低風(fēng)險 , 提高質(zhì)量的關(guān)鍵
p 持續(xù)集成更多的是一種開發(fā)文化: 工作完成的唯一標(biāo)準(zhǔn)是構(gòu)建成功

?

?

? 持續(xù)集成更多的是管理(需要管理者下決心),例如制定產(chǎn)品級別的集成策略,包括:
p 專用的持續(xù)集成硬件環(huán)境
p 導(dǎo)致主干版本構(gòu)建失敗的行為要嚴(yán)懲
p 修復(fù)失敗的構(gòu)建是最高優(yōu)先級的事情
p 經(jīng)常(每天多次)提交代碼,提交代碼前執(zhí)行足夠多的測試保證質(zhì)量
p 編寫自動化的測試用例( UT IT ST
p 每次構(gòu)建必須通過所有測試和審查

?

?

? 解決 版本構(gòu)建失敗的 問題是 團(tuán)隊 最高優(yōu)先級任務(wù)
p 最近提交代碼的開發(fā)者必須參與修復(fù)失敗的構(gòu)建
p 短期內(nèi)不能修復(fù)的構(gòu)建代碼必須回滾
? 開發(fā)人員應(yīng) 每天提交至少一次代碼
p 每天至少向版本控制庫提交一次代碼。頻繁的提交將促使開發(fā)人員把工作分解成更小的粒度,既降低工作難度,又有利于監(jiān)控項目的進(jìn)展。
? 自己提交 代碼不能導(dǎo)致 其他成員的 代碼構(gòu)建失敗
p 不要提交無法編譯或不能通過測試的代碼
p 開發(fā)人員提交代碼前必須做本地構(gòu)建,確保合入代碼正確
? 開發(fā)人員 不僅開發(fā)代碼 更要編寫自動化測試用例
p 開發(fā)人員不僅開發(fā)代碼,同時要編寫自動化的 UT IT 的測試用例來驗證軟件
p 開發(fā)人員要持續(xù)維護(hù)和更新自動化測試用例
? 開發(fā)人員須 先在本地構(gòu)建成功,才可提交代碼到配置庫
p 代碼提交到版本控制前;所有代碼都必須遵守通用的編碼和設(shè)計標(biāo)準(zhǔn),包括編譯、 PCLINT 檢查,編程規(guī)范檢查,常見錯誤檢查,復(fù)雜度檢查,重復(fù)代碼檢查、 UT 測試 100% 通過等。
? 始終保證主干版本的構(gòu)建成功
p 保持所有人工作在主干版本上,并且始終保持其能構(gòu)建成功
p 永遠(yuǎn)不要讓主干版本長期處于 build 不通過的狀態(tài)
? 不要在下班的時候留下失敗的構(gòu)建
? 不要在失敗的構(gòu)建上更新、提交代碼

?

?

? 開發(fā)、測試及設(shè)計共同負(fù)責(zé)(參與測試場景討論、測試策略制定、測試結(jié)果分析)
? 功能測試用例能夠及時納入持續(xù)集成環(huán)境
p 自動化測試設(shè)計和實(shí)現(xiàn),與產(chǎn)品代碼開發(fā)并行
p 自動化測試用例在本地調(diào)試通過后及時納入持續(xù)集成環(huán)境,以便盡早的執(zhí)行用例發(fā)現(xiàn)問題
? 持續(xù)集成環(huán)境中測試失敗導(dǎo)致構(gòu)建失敗
p 構(gòu)建成功標(biāo)準(zhǔn)包括自動化測試用例 100% 通過
p 導(dǎo)致構(gòu)建失敗的用例開發(fā)和測試要共同關(guān)注并及時修復(fù)

?

?

? 管理者重要職責(zé)是審視持續(xù)集成的結(jié)果 ,出現(xiàn)問題促使盡快解決
p 從關(guān)注計劃、文檔到 關(guān)注持續(xù)集成結(jié)果 的轉(zhuǎn)變,持續(xù)集成反映了產(chǎn)品真實(shí)的進(jìn)度和質(zhì)量。
? 保證持續(xù)集成人力投入,產(chǎn)品持續(xù)集成有 專人負(fù)責(zé) ,其職責(zé):
p 負(fù)責(zé)制定產(chǎn)品分級分層分布式的產(chǎn)品持續(xù)集成策略
p 負(fù)責(zé)持續(xù)集成環(huán)境的搭建和維護(hù)
p 負(fù)責(zé)維護(hù)產(chǎn)品的模塊依賴關(guān)系(如 Makerfile 、測試執(zhí)行的順序)
p 提供在各種不同環(huán)境下(如操作系統(tǒng)、硬件配置、軟件配置)的工具配置和使用
p 及時定位和解決持續(xù)集成環(huán)境存在的問題
? 負(fù)責(zé)產(chǎn)品持續(xù)集成的專人應(yīng)當(dāng)是 資深員工 不是沒有經(jīng)驗的員工
p 持續(xù)集成需要對產(chǎn)品架構(gòu)、模塊依賴關(guān)系、開發(fā)活動順序、環(huán)境部署、配置庫等都非常熟悉的人才可以制定出正確的產(chǎn)品持續(xù)集成策略。
p 持續(xù)集成是系統(tǒng)工程,涉及設(shè)計、開發(fā)、測試、工具、技術(shù)等之間協(xié)同,需要對產(chǎn)品有系統(tǒng)視野的人。

?

?

n 實(shí)踐 1 :單一的代碼源,所有軟件資產(chǎn)集中管理;
n 實(shí)踐 2 :經(jīng)常提交代碼,每天至少提交一次代碼;
n 實(shí)踐 3 :不要提交無法構(gòu)建的代碼,提交代碼之前先執(zhí)行本地構(gòu)建;
n 實(shí)踐 4 :構(gòu)建過程完全自動化;
n 實(shí)踐 5 :每次變更都要觸發(fā)一次集成構(gòu)建,在一臺獨(dú)立的構(gòu)建機(jī)器上;
n 實(shí)踐 6 :立即修復(fù)無法通過的構(gòu)建;
n 實(shí)踐 7 :使構(gòu)建足夠快,必要的話,采用分級構(gòu)建策略;
n 實(shí)踐 8 :將軟件部署到接近真實(shí)的環(huán)境上進(jìn)行測試;
n 實(shí)踐 9 :任何人可隨時取到最新的可執(zhí)行程序;
n 實(shí)踐 10 :所有人都知道最新的構(gòu)建狀態(tài);

?

?

?

持續(xù)集成(Continuous Integration),


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲一区在线日韩在线深爱 | 国产99区| 日本特黄特色aaa大片免费欧 | 成年女人午夜毛片免费看 | 999精品视频 | 99香蕉视频| 欧美激情精品久久久久 | 国产激情在线视频 | 国产亚洲精品线观看77 | 日日草夜夜操 | 不卡一级毛片免费高清 | 色视频在线免费 | 看片福利| 亚洲综合色就色手机在线观看 | 久久亚洲精品专区蓝色区 | 日产精品久久久一区二区 | 亚洲高清视频在线 | 四虎影院免费视频 | 一级特黄特黄毛片欧美的 | 亚洲国产视频在线观看 | 亚洲欧美综合精品成 | 伊人色美文情网址 | 国产美女福利视频 | 亚洲毛片免费视频 | 香蕉网站男人网站 | 国产精品免费精品自在线观看 | 欧美午夜性刺激在线观看免费 | 婷婷激情网站 | 麻豆精品久久久 | 猫咪视频成人永久免费观看 | 久草午夜 | 伊人伊狠亚洲综合影院 | 亚洲精品人成无码中文毛片 | 老子影院午夜精品欧美视频 | 四虎永久免费地ww4hu57 | 国产日本久久久久久久久婷婷 | 亚洲黄色录像 | 999小视频| 欧美成人性色xxxx视频 | 麻豆精品一区二区三区免费 | 国产成人精品午夜免费 |