天天看點

Jenkins建構Android項目持續內建之簡介篇

瞎扯

  2014年畢業的,到現在出來工作一年半左右。在大學學的專業是網絡工程,大三下學期跟着老師做了四五個月的web開發,後來自學了Android,選擇它是因為自己的一個興趣,是以後來工作順理成章的找了Android開發的工作。到今年六月初的時候,第一次換了工作,來到新公司後,第一次接觸到了項目持續內建的概念,并且在來到新公司開始的一兩個月,老大讓我去了解學習了下,這裡我整理了下我所知道的關于Jenkins建構Android項目持續內建。

  ——生物在一個一成不變的環境下,它是有惰性的,隻要它習慣了周圍,那麼它的成長就會慢下來,甚至停止,是以有時候要變換一下周圍環境,去接觸新東西,吸取養分,野蠻生長。人也是生物。

持續內建

  什麼是持續內建,這裡借用了百度百科的解釋:持續內建是一種軟體開發實踐,即團隊開發成員經常內建它們的工作,通過每個成員每天至少內建一次,也就意味着每天可能會發生多次內建。每次內建都通過自動化的建構(包括編譯,釋出,自動化測試)來驗證,進而盡早地發現內建錯誤。

  在公司裡,一個項目往往不是一個人在做開發,這樣就有協同合作的問題,一般現在都使用git來作版本控制。好的習慣就是要做到,每次送出我們都需要把伺服器上别人的代碼抓取下來,然後合并到自己的代碼裡,接着在本地跑一邊,沒問題了在送出到伺服器上。這樣很大程度上,能夠保證伺服器上的代碼運作是沒問題的,但總有疏忽的時候。如果有個程式無時無刻在幫我們做這事的校驗,那麼人的習慣和程式哪個更可靠呢?

  協同合作還包括與測試組的合作。一般情況下,測試人員要測試的時候,會去找開發人員要相應版本的測試包,然後開發人員再打相應的包給測試,持續內建也是要解決這種零散的建構(編譯打包)問題,讓程式自動幫我們完成這些。

持續內建神器Jenkins

  Jenkins是一個開源軟體項目,旨在提供一個開放易用的軟體平台,使軟體的持續內建變成可能。

  Jenkins 是一個可擴充的持續內建引擎。

主要用于:

1. 持續、自動地建構/測試軟體項目。

2. 監控一些定時執行的任務。

Jenkins擁有的特性包括:

1. 易于安裝-隻要把jenkins.war部署到servlet容器,不需要資料庫支援。

2. 易于配置-所有配置都是通過其提供的web界面實作。

3. 內建RSS/E-mail通過RSS釋出建構結果或當建構完成時通過e-mail通知。

4. 生成JUnit/TestNG測試報告。

5. 分布式建構支援Jenkins能夠讓多台計算機一起建構/測試。

6. 檔案識别:Jenkins能夠跟蹤哪次建構生成哪些jar,哪次建構使用哪個版本的jar等。

7. 插件支援:支援擴充插件,你可以開發适合自己團隊使用的工具。

總結

  最後使用Jenkins建構Android項目持續內建的目标是盡早發現Android項目建構問題,以及測試人員可以在不懂開發的任何時候進行一鍵建構,得到自己想要的測試包。這就是當我們搭建完整個環境後所能達到的效果。下一篇将講Jenkins的安裝。

看下其他文章:

1、Jenkins建構Android項目持續內建之簡介篇

2、Jenkins建構Android項目持續內建之Jenkins的安裝篇

3、Jenkins建構Android項目持續內建之系統配置篇

4、Jenkins建構Android項目持續內建之建立項目

5、Jenkins建構Android項目持續內建之單元測試及代碼覆寫率

6、Jenkins建構Android項目持續內建之findbugs的使用