持續整合hudson入門

來源:互聯網
上載者:User

 極限編程中一項建議實踐便是持續整合,持續整合是指在開發階段,對項目進行持久性自動化編譯、測試,以達到控制碼品質的手段。 
     持續整合提供了及時發現問題、追蹤問題、修複問題的機制,他替代了傳統的在所有代碼編寫完畢後才提交QA部門進行測試的方法。 
     持續整合對單元測試較為依賴,測試覆蓋率越高,單元測試越準確,越能體現持續整合的效果。持續整合主要在以下方面提供好處; 

1、持續自動化測試(持續整合可通過時間間隔觸發,或其他方式觸發) 
2、跟蹤工程健康情況 
3、強制性單元測試用例,驗收測試用例等 
4、靜態代碼檢測,產生測試報告 

    Hudson是一款輕量級、易擴充、易配置的持續整合平台,該整合平台maven2有良好的支援,並且擴充外掛程式豐富,包括findbug,PMD靜態分析外掛程式、emma單元測試覆蓋率外掛程式、junit測試報告外掛程式等等。 

    下面我們以Hudson持續整合平台為例,主要講解怎麼安裝hudson和hudson擴充外掛程式的使用,並以maven2工程為例,建立新作業。 

     下載Hudson的war包,http://hudson-ci.org/ 在tomcat環境裡,在conf\Catalina\localhost 中建立設定檔hudson.xml,配置如下 
<?xml version="1.0" encoding="UTF-8"?> 
   <Context docBase="yourPath/hudson.war" path="hudson" reloadable="false"> 
</Context> 
yourPath為hudson.war的目錄路徑。 
啟動tomcat,訪問http://localhost:8080/hudson便能訪問我們的持續整合應用了。Jboss環境中,複製war包到default目錄下即可。如下為安裝好以後的hudson訪問介面。 

 


應用搭建好以後,我們按一下步驟操作 

一、hudson全域配置資訊 
     
    hudson配置,比如JDK的安裝目錄、Maven的安裝目錄等、SMTP伺服器和使用者密碼等(用於編譯失敗提醒開發人員) 

     進入“系統管理”》“系統設定”,對maven的安裝目錄、jdk的安裝目錄進行設定,其他保持預設,如若需要進階配置,請開啟問號下的提示資訊,按照提示開啟相應的選項。如為maven和jdk的配置資訊。 
   



二、建立任務和任務配置 
  
    hudson任務表示一個持續整合的項目,任務配置包括項目版本控制分支、整合任務觸發器(何時觸發項目整合) 

     進入“建立任務”,如選擇maven2項目,並輸入任務名稱 
    



    點擊儲存後,進入任務“配置”項 
   
    任務配置包括主要的SVN的項目分支配置、項目整合觸發機制配置和編譯目標配置。配置後如下所示 
    


    一個整合任務就這樣簡單的配置好了,目前能持續的編譯和測試,在發現測試不通過或者編譯不通過的時候,由郵件發送給相關開發人員(需自行配置)。 

三、添加外掛程式和運用外掛程式 
    
     配置一個任務後,我們希望hudson不僅可以通過整合發送測試報告、編譯問題,還需要掌握靜態代碼的分析結果,比如findbus或pmd的分析結果,再或則是單元測試覆蓋率的相應報告。接下來,我們安裝findbus外掛程式。 

      進入“系統管理”》“管理外掛程式”,如下 
      
      
 

   我們在“可選外掛程式”中找到findbugs外掛程式,analysis-core外掛程式,並下載。進入進階選項。上傳並安裝如下: 
   


重啟系統,手動觸發整合,我們可以見到最終的Integration Environment,包括外掛程式的圖示等,至此,hudson安裝完畢,其中還有部分功能有待大家去研究和使用,外掛程式也豐富多彩。 


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.