qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          軟件開發為何采用持續集成

            在軟件開發過程中,我們會涉及到配置管理、源碼控制、發布計劃、審計、符合性和集成,以及構建測試和部署流程、驗收測試、依賴管理和生產環境的創建與管理,很多人認為這些與確定需求、實現需求、寫代碼相比,這些活動并不那么重要,它只為是軟件開發過程很小的一部分并且不需求多大的技術投入。其實不然,恰恰相反它們會消耗大量的時間和精力,而且是成功交付軟件的關鍵因素。假如沒有關注這一方面帶來的潛在風險,就可能耗費大量不必要的資金,甚至導致整個項目嚴重延期。

            如果沒有持續集成,我們可能會遇到下列問題:

            1、如何將一個想法以最快的速度交付給用戶。

            2、如何協調開發人員、測試人員,以及構建和運維人員在一起高效地工作。

            3、在發布當天是否遇到很多的問題,發布過程時候需要很長的時間。

            4、是否在開發完成之后才發布軟件,失敗后長期的加班。

            5、如何快速的獲取用戶的反饋,并讓團隊人員及時的改正。

            6、生產環境是否還是采用的手工部署,還在為不同環境之間的部署煩惱。

            7、在開發過程中,應用程序在相當長的一段時間內無法運行,無法驗證每次修改的正確性。

            一行代碼的改動需要花多長時間才能部署上線,處理方式是否可重復且可靠呢?從決定做某種修改到該修改結果正式上線的這段時間稱為周期時間。對任何項目而言,它都是一個極為重要的度量標準。

            軟件開發的首要任務是盡早交付有價值的軟件并讓客戶滿意,速度是至關重要的,因為未交付的軟件就意味著成本。如果不能按時按量的交付,就會產生不必要的成本浪費。而為了更好的協調組內人員高效的工作,在整個交付過程中,團隊中的每一個成員都必須對每一個交付特性負責,無論什么樣的修改都應該觸發反饋流程,反饋應該盡快發出,團隊必須接受反饋,并依據它作出相應的行動??焖俚慕桓妒鼓隳軌蝌炞C那些新開發的特性或者修復的缺陷是否真的有用。

            為了達到短周期、高質量的交付目標,發布軟件必須自動且頻繁化。

            自動化:構建、部署、測試、發布

            頻繁化:頻繁發布,每個發布版本之間的差異會很小,大大減少與發布相關的風險,且容易回滾,頻繁發布也會加快反饋速度。每當有人提交代碼,就對整個應用進行構建,執行全面的自動化測試,以驗證其正確性。更重要的是,如果構建或測試失敗了,開發團隊就要停下手頭的工作,立即修復它,時時刻刻都要讓正在開發的軟件一直處于可工作的狀態。

            實現持續集成,你需要的:

            1、版本控制,所有涉及產品的都要加入到版本控制中,包括構建與部署腳本。

            2、自動化構建,自動化的構建整個過程,縮短周期時間(Cycle time)。

            3、持續集成系統,Jenkins, ThoughtWorks公司的Go,JeBrains的TeamCity等。

            提交代碼必須遵守以下原則:

            1、查看構建是否成功,如果失敗,停下手頭的工作和團隊中的其他人一起修復。

            2、如果構建且測試全部通過,就從版本控制庫中的代碼更新到自己的開發環境上。

            3、在自己的修改上重新構建,運行所有的測試,確保在自己機器上的代碼都是正確的且工作正常。

            4、如果本地構建成功, 再從版本構建庫中更新代碼到本地, 再做一次構建,如果成功的話,就提交本地的修改到版本庫中。

            5、在遠程持續集成服務器上再次構建包含你的這次提交的構建結果(通常是自動的)。

            6、如果構建失敗,就停下手中的事,在自己的開發機上修復這個問題后,再重新回到步驟3.。

            7、構建成功,小慶祝一下,并開始下一項任務。

            持續集成縮短從想法到商業價值實現的時間,減少時間和降低風險,增加反饋,改進負責交付的開發、測試和運維人員之間的協作關系。

          posted on 2012-06-25 09:39 順其自然EVO 閱讀(274) 評論(0)  編輯  收藏 所屬分類: qtp 、selenium and watir webdrivers 自動化測試學習

          <2012年6月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 蒙自县| 拉萨市| 唐海县| 电白县| 随州市| 黎川县| 永仁县| 房产| 平和县| 精河县| 满洲里市| 大城县| 山东| 图木舒克市| 红河县| 邵阳县| 宜宾市| 佛山市| 麻城市| 高唐县| 江陵县| 延吉市| 阿勒泰市| 普定县| 开封市| 广平县| 安乡县| 科尔| 浦江县| 玉门市| 逊克县| 莱芜市| 彩票| 射阳县| 获嘉县| 历史| 英超| 永昌县| 石嘴山市| 高邑县| 涞源县|