你曾經發現在版本控制系統上取得原始碼,卻發現他沒辦法使用嗎?
你曾經擔心你更改的一個小功能是否會影響到系統正常運作嗎?
你認為你們的程式碼是凌亂且難以維護的嗎?
你們程式的組件都是統一由特定人士專門建置,少了他就沒辦法換版嗎?
有了Continuous Integration Server,你會發現人生更加的美好,
所有Checking的程式碼都將會自動進行建置,確保版本控制系統上的都是可用的,
完整的進行UnitTest,讓你放手重構或修改既有的功能,
透過靜態程式碼分析,統一Coding的風格,
還可以發現潛藏的安全性漏洞,甚至作為重構優先順序的依據,
建置和部屬不在總是需要依賴特定人士,只要按下一個按鍵,輕輕鬆鬆搞定!
CI Sever全名叫做Continuous Integration Server
在一個軟體開發團隊中, CI Server扮演了一個很重要的角色,
它是幫助我們掌握軟體的品質的最佳第六人,
而在接下來的30天之中,我將向大家介紹如何使用Jenkins這套軟體,
來重頭打造專屬於自己的CI Server,主要會依據以下幾個大方向來介紹
※為什麼需要CI Server?
在這個系列中,將向大家針對CI Server做簡單的整體介紹,
包括引進CI Server可以為我們帶來甚麼樣的好處,為什麼我們需要它?
以及介紹CI Server的主要功能,我們可以怎麼樣的利用它
※基本安裝篇
我們要如何安裝Jenkins? 以及設定CI Server的基本環境變數,
基本簡單介紹Jenkins的主要畫面以及使用的方法
※自動化建置
進行.Net的軟體建置需要甚麼?
如何將我的專案設定讓Jenkins自動化建置?
如何設定我所需要的各種建置參數?
設定Daily Build或是Check In Build,確保版本控制系統程式碼的高可用度
※自動化測試
如何設定專案進行自動化單元測試?
如何顯示我的測試涵蓋率報表?
如何整合我的Web UI 自動化測試在CI Server上執行?
※靜態程式碼分析
統一我的專案程式碼風格
檢查我的專案是否存在潛藏的風險
找出專案中程式碼相似度高的地方
檢查我的程式碼複雜度,作為重構程式的依據
※自動化部屬工作
介紹.Net Web Deployment Framework,
如何單鍵完成我的部屬工作?
設定部屬環境的目錄權限,部屬工作所需要的自訂參數設定
※MS Build介紹
介紹MS Build基本語法,
以及如何使用MS Build來統一建置流程,讓CI Server新增工作更加容易
※實用小技巧
補充介紹好用的小工具或是PlugIn,
來讓我們進行各種操作更加的方便順手,
或是讓我們得到第一手系統情報及資訊
※總結
希望接下來29天的分享,可以讓大家初步的了解CI Server,
甚至打造自己的第一套CI Server,
透過工具,來讓我們開發軟體的品質提升,
減少平常花在排除異常和各種不確定風險的時間,
讓自己的軟體隨時處在一個高品質的狀態,降低維護成本,
希望對大家都能夠有幫助,也歡迎大家一起討論分享心得 :D