版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 持續(xù)集成的應用客戶第一 | 陽光溝通 | 團隊協(xié)作 | 擁抱變化 | 學習成長持續(xù)集成目的持續(xù)集成流程、作用及原則持續(xù)集成工具使用介紹持續(xù)集成概念持續(xù)集成在飛看流程目錄持續(xù)集成目的持續(xù)集成流程、作用及原則持續(xù)集成工具使用介紹持續(xù)集成概念持續(xù)集成在飛看流程目錄持續(xù)集成目的及早集成,及早發(fā)現(xiàn)問題!提前并頻繁地做讓你感到痛苦的事!持續(xù)集成,達到持續(xù)發(fā)布目的!持續(xù)集成目的持續(xù)集成流程持續(xù)集成工具使用介紹持續(xù)集成概念持續(xù)集成在飛看流程持續(xù)集成相關概念(一)l自動化(automated):一個”無須干預”的過程。當一個完全自動化的過程開始后,不需要用戶的干預。系統(tǒng)管理員稱之為“無人值守”過程。l構建(b
2、uild):編譯、審查、部署及測試軟件的一組活動。l持續(xù)(continuous):從技術上講,持續(xù)意味著一旦開始就永不結束。這意味著構建會不斷進行,但實際上并非如此。CI中的持續(xù)更像是堅持,一個進行不斷運行,輪詢版本控制庫的變更。如果CI服務器發(fā)現(xiàn)了變更,就會執(zhí)行構建腳本。持續(xù)集成相關概念(二)l持續(xù)集成(Continuous Intergration):”簡稱CI。一項軟件開發(fā)實踐,其中團隊的成員經(jīng)常集成他們的工作,通常每個人每天至少集成一次”-這導致每天會集成多次。每次集成是通過自動化的構建(包括測試)進行的,目的是盡快地檢查集成的錯誤。許多團隊發(fā)現(xiàn)這樣做能夠減少大量的集成問題。讓團隊能夠
3、更快地開發(fā)一致辭軟件。l持續(xù)交付(Continuous Delivery):通過持續(xù)集成部署流水線達到發(fā)布條件,經(jīng)常地可獲得可交付的版本。持續(xù)集成相關概念(三)l開發(fā)環(huán)境(Development Environment):軟件編寫的環(huán)境。這包括IDE,構建腳本,工具,第三方的庫,服務器和配置文件等。l審查(Inspection):出于內部質量要求,對源代碼/字節(jié)碼進行分析。將自動化的審查(包括靜態(tài)分析和運行時分析)稱為“軟件審查”。l私有構建(Private Build):將變更提交至配置庫之前,在您的開發(fā)環(huán)境中執(zhí)行的本地構建。目的是減少最近的變更破壞集成構建的可能性。持續(xù)集成目的持續(xù)集成流程
4、、作用及原則持續(xù)集成工具使用介紹持續(xù)集成概念持續(xù)集成在飛看流程持續(xù)集成的流程持續(xù)集成包括的范圍目標:只需要點擊一下鼠標,就可以將軟件部署到任何目標環(huán)境,包括開發(fā)環(huán)境、測試環(huán)境或生產(chǎn)環(huán)境。上述各項工作都持續(xù)進行、持續(xù)反饋各種潛在的問題將被持續(xù)地暴露和跟進,進而保證持續(xù)發(fā)布。持續(xù)集成流程持續(xù)集成階段為減少構建時間,快速反饋一般分為提交階段與驗收階段對應輕量級構建及重量級構建輕量級構建:對軟件編譯、規(guī)范性檢查(靜態(tài)檢查)、單元測試等(如有的有冒煙測試)排除所有明顯的問題重量級構建:執(zhí)行更全面的集成構建,包括部署與測試(有的包括動態(tài)檢查)1. 小組成員check in 代碼到源碼庫中。2. 自動開發(fā)服
5、務器不斷的監(jiān)測該源控制庫3. 新代碼不斷的被該服務器check out。4. 不斷地編譯、打包、規(guī)范性檢查、單元測試、自動安裝與部署、自動測試5. 結果發(fā)出報告。持續(xù)構建流程持續(xù)集成實施一般步驟1、自動化1.1 包括但不是非要全部包括:自動編譯、自動單元測試、自動規(guī)范性檢查、自動安裝與部署、自動測試,沒有嚴格順序1.2 自動工具編譯打包工具:ant 、mvn、make單元測試:junit cppcheck規(guī)范性檢查:checkstyle、findbug等2、執(zhí)行單命令構建通過單命令(可是批處理)可運行自動構建,并出具相應報告持續(xù)集成實施一般步驟3、使用持續(xù)集成工具將流程形成反饋3.1 實現(xiàn)定時
6、或輪詢配置庫,獲取軟件源碼,進行自動編譯打包、單元測試、規(guī)范性檢查生成報告。3.2 定時或輪詢已生成的二進制包,自動安裝與部署、自動接口測試、功能性測試、性能測試等生成報告。持續(xù)集成的機制根據(jù)實際情況定。3.3 反饋方式多種:郵件、SMS等持續(xù)集成帶來的好處作用描述及早發(fā)現(xiàn)缺陷CI每次變更時(或每天多次)就執(zhí)行測試與審查,能盡早發(fā)現(xiàn)缺陷減少重復過程CI減少重復過程,包括編譯、單元測試、審查、部署與測試減少假定 CI通過在一個干凈的環(huán)境中不斷使用相的過程和腳本重復構建,減少第三方環(huán)境的依耐每次提交都可能產(chǎn)生一個可發(fā)布的軟件 因CI及時經(jīng)常地部署測試,軟件的質量情況可以測量與追蹤,可得到可發(fā)布的版
7、本增強項目的可見性因CI可提供質量情況,作為有效的決策,同時也可關注到其趨勢建立起更強大的產(chǎn)品信心因CI,讓項目團隊清楚軟件通過測試驗證其行為,也清楚代碼的修改造成的影響持續(xù)集成的前提條件1、版本控制全面的地配置管理,與項目相關的所有內容必須提交至版本庫中。2、自動化如果沒有一系列全面的自動化測試,那么構建成功只意味著能夠編譯3、團隊共識持續(xù)集成不是一種工具,是一種實踐,需要投入并遵守一些規(guī)則,才能提高質量持續(xù)集成的實踐1. 經(jīng)常提交代碼2. 構建失敗后不要提交新代碼3. 不要提交無法構建的代碼4. 立即修復無法集成的構建5. 回家前,構建必須處于成功狀態(tài)6. 時刻準備回滾到前一版本7. 在回
8、滾前規(guī)定一個修復時間8. 不要將失敗的測試注釋掉9. 為自己導致的問題負責10.測試驅動開發(fā)必不可少實踐持續(xù)集成的實踐1. 極限編程開發(fā)實踐2. 違備架構原則,就讓構建失敗3. 若測試運行變慢,也讓構建失敗4. 若編譯警告或代碼風格問題,就讓測試失敗推薦實踐持續(xù)集成原則一u為軟件的發(fā)布創(chuàng)建一個可重復且可靠的過程幾乎將所有的事情自動化將構建、部署、測試和發(fā)布軟件所需的東西全部納入到版本控制管理之中持續(xù)集成的原則二u將幾乎所有的事情自動化自動化是部署流水線的前提條件。當然你不需要把所有的東西一次性地全部自動化,你應該看一下在構建、部署、測試和發(fā)布過程中,哪個環(huán)節(jié)是瓶頸,隨著時間的推移,最終你可以,
9、也應該將所有的環(huán)節(jié)自動化。持續(xù)集成的原則三u把所有的東西都納入版本控制將構建、部署、測試和發(fā)布的整個過程中所需要的東西全部保存在某種形式的版本存儲庫中,包括需求文檔、測試腳本、自動化測試用例、網(wǎng)絡配置腳本、部署腳本、數(shù)據(jù)庫創(chuàng)建、升級、回滾和初始化腳本、應用程度所領帶的軟件集合的配置腳本、庫文件、工具鏈以及技術文檔等。與每次構建結果的相關的版本都可以識別。持續(xù)集成的原則四u提前并頻繁地做讓你感到痛苦的事這是最通用也是最有啟發(fā)性的原則持續(xù)集成的原則五u內建質量整個團隊必須執(zhí)行鐵一般的紀律:一旦發(fā)現(xiàn)缺陷,就要馬上著手修復兩個推論:p 測試不是一個階段,當然也不應該開發(fā)結束之后才進行p 測試也不純粹或
10、主要是測試人員的領域。交付團隊的每個人都應該對應用程序的質量負責持續(xù)集成的原則六u Done意味著已發(fā)布(非1即0)u 交付過程是每個成員的責任u 持續(xù)改進持續(xù)集成目的持續(xù)集成流程、作用及原則持續(xù)集成工具使用介紹持續(xù)集成概念持續(xù)集成在飛看流程持續(xù)集成的成熟度 該評估方法借鑒了ThoughtWorks敏捷成熟度模型,進行簡化。持續(xù)集成成熟度( e-Business )-1級手動的0級可重復的 1級重復執(zhí)行2級頻繁的 3級對內防御的 3+級對外防御的 持續(xù)集成成熟度評估( e-Business )-1級 :主要依賴于手動的方式集成軟件。每次集成的方式可能不一樣。0 級 :主要依賴于手動的方式構建軟
11、件,但是每次構建的方式都是相同的或者相似的。通常有相關的文檔的指導。 1級:構建是自動的,但是執(zhí)行的不夠頻繁。構建的觸發(fā)是隨機的或者頻率是非常低的(低于每天一次)。構建的速度通常非常慢,比如一次構建超過半個小時。 持續(xù)集成成熟度評估( e-Business )2級:構建是自動的,而且構建的速度較快。構建的觸發(fā)條件是明確的,通常每次代碼提交都會觸發(fā)構建。團隊中的每個人都會觸發(fā)構建,并且了解構建的狀態(tài) 。 3級:構建是自動的。由測試和檢查來保證團隊內部的開發(fā)質量。持續(xù)集成的修復具有最高的優(yōu)先級。團隊對持續(xù)集成的結果有信心。 3+級:團隊能夠根據(jù)自己的需要,協(xié)調其他團隊的持續(xù)集成,當依賴的其他團隊的
12、代碼和組件或者第三方庫和基礎設施發(fā)生改變時自動進行構建。團隊對于外部依賴的可靠性有信心。 持續(xù)集成成熟度( e-Business )-1級手動的0級可重復的 1級重復執(zhí)行2級頻繁的 3級對內防御的 3+級對外防御的 我們在哪一級?測試成熟度( e-Business )-1級獨立的0級審查的1級共享的2級集成的 3級測試驅動的3+級全面集成的測試成熟度( e-Business )-1級 :測試由專門的測試人員負責。僅在軟件開發(fā)結束后執(zhí)行。 0 級 :測試由專門的測試人員負責。有部分測試是在軟件開發(fā)過程中執(zhí)行。但大部分測試在軟件開發(fā)結束后執(zhí)行。 1級:開發(fā)人員參與測試。測試并未集成在構建過程中。部
13、分測試在軟件開發(fā)過程中執(zhí)行,大部分測試在軟件開發(fā)結束后執(zhí)行。 測試成熟度( e-Business )2級:開發(fā)人員參與測試。部分測試集成在構建過程中執(zhí)行。大部分測試在軟件開發(fā)過程中執(zhí)行。3級:業(yè)務分析人員和開發(fā)人員均參與測試。測試在構建過程中自動執(zhí)行。開發(fā)人員實踐測試驅動開發(fā)3+級:全團隊對測試負責。測試驅動整個開發(fā)過程。測試與構建完全集成。 測試成熟度( e-Business )-1級獨立的0級審查的1級共享的2級集成的 3級測試驅動的3+級全面集成的老兄,我們又在哪里?持續(xù)集成三大環(huán)境習慣改變,從這里開始開發(fā)人員的一天從Daily Build開始 開發(fā)人員上班的第一件事兒就是查看Daily
14、 Build的結果,看是否由于自己昨天的代碼Check-in,造成Build Broken 查看地址:66:8080/hudson-2.2.065:8080/hudson-2.2.0習慣改變,從這里開始OK,Year!習慣改變,從這里開始開發(fā)環(huán)境全面升級為昨晚的版本 查看構建結果,若不成功,必須先修復完成,等待下一次構建的成功。連續(xù)三次后,有MM送你大頭貼的喔習慣改變,從這里開始開發(fā)環(huán)境全面升級為昨晚的版本 構建成功后,從自動構建環(huán)境中獲取軟件包,開發(fā)環(huán)境升級昨晚的版本 從指定路徑直接下載軟件包:網(wǎng)頁下載或直接下載6
15、6output65xiehuihudson習慣改變,從這里開始從這里下載習慣改變,從這里開始開發(fā)驗證昨天的完成情況 打開禪道Bug管理工具,驗證自己的BUG,更新禪道BUG狀態(tài) 打開禪道任務,驗證自己昨天的任務,更新任務完成狀態(tài)習慣改變,從這里開始開始修復今天的BUG及完成今天的禪道任務 查看禪道指定給自己的Bug,解決高優(yōu)先度的Bug。因為質量重于新功能 打開禪道任務,開始動工完成分給自己的任務接下來,開發(fā)人員會從源代碼管理工具中Check out代碼修改代碼(解決Bug或實現(xiàn)新功能)取得源代碼管理工具中最新變化,在本機Build和單元測試請開發(fā)組同事作Code Revie
16、w寫日志,Check in代碼在禪道Bug管理工具中修改Bug的狀態(tài)開發(fā)人員以一封Daily Report結束一天的工作代碼上傳測試人員第一件事做什么?升級軟件包,驗證BUG 從持續(xù)集成環(huán)境中下載軟件包升級 打開禪道管理工具,查看指定給自己的Bug,,驗證已解決的Bug測試人員第一件事做什么?點擊這里一看就知道開發(fā)的變更記錄測試人員第一件事做什么?童鞋們,變更日志寫沒寫清楚,測試一看就知道接下來,測試人員會 根據(jù)測試用例檢驗當天的Build 在禪道Bug管理工具中錄入新發(fā)現(xiàn)的Bug,等待開發(fā)人員解決下班前,測試人員會 發(fā)送當天或者一周的Bug報告和測試用例報告測試人員說明 上述測試是開發(fā)過程中的測試,正式某個版本轉測試走轉測流程 上述測試人員包括體驗人員飛看的持續(xù)集成 1、做了自動編譯,還未做自動測試 2、自動編譯做了兩個層級 部件級 集成級飛看的持續(xù)集成6a801S1001appstoreAndroidTVPortalMovieonLine持續(xù)集成目的持續(xù)集成流程、作用及原則持續(xù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年體育個人工作總結
- 《特斯拉電動汽車》課件
- 《水利工程質量管理》課件
- 保護瀕危動物宣傳方案萬能2022
- 線粒體遺傳疾病分子機制-洞察分析
- 維修信息化系統(tǒng)研究-洞察分析
- 腿節(jié)力學性能預測-洞察分析
- 文學地域性與文化認同-洞察分析
- 圖神經(jīng)網(wǎng)絡與數(shù)學建模-洞察分析
- 核算會計崗位職責(完整版)
- 2025年工程春節(jié)停工期間安全措施
- 2024版人才引進住房租賃補貼協(xié)議3篇
- 川藏鐵路勘察報告范文
- 新零售智慧零售門店解決方案
- 小學一年級數(shù)學20以內的口算題(可直接打印A4)
- 上海黃浦區(qū)2025屆物理高一第一學期期末質量跟蹤監(jiān)視模擬試題含解析
- 肺結核課件教學課件
- 規(guī)劃設計行業(yè)數(shù)字化轉型趨勢
- 2024年廣告代理合同的廣告投放范圍與分成比例
- 物業(yè)年終總結匯報工作
- 2024-2025學年上學期期中教育學業(yè)質量監(jiān)測八年級生物學試卷
評論
0/150
提交評論