9五、Jenkins部署.net持續集成自動化測試環境

##目錄
1. 安裝Jenkins
1. 配置Jenkins
1. 自動編譯
1. 自動部署
1. 自動測試

環境介紹:
web服務器機器:192.168.1.7
svn服務器:192.168.1.5
jenkins服務器:192.168.1.6(此服務器上面安裝Jenkins)
三臺機器均爲WIN7 操做系統。

##1. 安裝Jenkins
安裝比較簡單就不詳細介紹了,記住須要先安裝JDK1.7由於Jenkins依賴jdk。提供官網地址,選擇本身的想要安裝的系統環境進行下載。
[官網下載]( http://jenkins-ci.org/)

##2. 配置Jenkins
>安裝完成在建立項目以前,須要先對Jenkins作一些環境配置和插件的安裝。
** 下面列來須要用的插件:**
- SVN插件 用來pull系統.net源碼(默認已經安裝)
- MSBuild plugin  插件 用來實現對源碼進行編譯
- Post bulid task插件  用來判斷是否編譯中出錯,而中止後面的構建
- Publish Over FTP插件 實現遠程FTP遠程部署
- FxCop Runner Plugin  用來作.NET靜態代碼檢查的工具(如須要的話,能夠在編譯完成後添加。本文略。)

###插件安裝和配置
####安裝
進入 【Jenkin】-【系統管理】-【插件管理】-【可選插件】進行搜索要作安裝的插件名稱,而後點擊頁面中的【直接安裝】按鈕進行安裝。
安裝時會進入到插件安裝界面,能夠看到是否安裝完成,安裝完成後重啓Jenkins服務。
(全部插件能夠一塊兒安裝,也能夠分開安裝,最後重啓,具體操做自行腦補)

####環境配置
經過  【Jenkin】-【系統管理】-【系統設置】配置下面插件環境
**添加MSBuild環境**
以下圖,配置MSBuild.exe路徑(我編譯使用v.4.0版本,黃色警告不用管)
**添加FTP環境**
IIS發佈web目錄,同時發佈爲ftp目錄,編譯完後的文件經過FTP進行上傳。


###建立項目
填寫項目名稱,選擇自由風格,點擊「ok」完成建立

##3. 編譯和部署

**1. SVN 配置**
進入建立的項目,點擊配置按鈕,進行配置項目的構建。
首先源碼管理選擇 Subversion (即SVN)

**2. 配置構建觸發器**
Poll SCM:定時檢查源碼變動(根據SCM軟件的版本號),若是有更新就checkout最新code下來,而後執行構建動做。
H/5 * * * *  (每5分鐘檢查一次源碼變化)  
Build periodically:週期進行項目構建(它不care源碼是否發生變化)
0 2 * * *  (天天2:00 必須build一次源碼)
個人配置以下:


**3. MSBulid 配置 **
選擇以前配好的MSBuild Version,填寫項目中的編譯文件名稱,以及編譯命令

MSBuilder Version 爲以前配置的 "Version 4.0"web

MSBuild Build File 是項目文件或者工程文件的名稱服務器

而後就是MSBuild的命令行參數了。svn

/t:Rebuild 表示每次都重建,不使用增量編譯工具

/toolsvervsion:4.0 表示使用4.0版本編譯工具post

/property:Configuration=Release 表示編譯Release版本,單元測試

/property:TargetFrameworkVersion=v4.5表示編譯的目標是.NET 4.5測試


**4. Post build task配置**ui

編譯完成後,能夠添加post build task判斷編譯是否報錯,若是沒有報錯則執行輸出命令 提示編譯成功(或者調用其它命令腳本)。spa

編譯日誌結果操作系統

若是成功,則顯示 0 個錯誤,在編譯成功後能夠啓動單元測試


經過post build task進行判斷後,進行部署,若是失敗則不會進行部署。


**5. Publish Over FTP配置 **

編譯成功後使用FTP把編譯後的目錄文件上傳到服務器。

(這裏說一下,部署方式有不少種,對於.net系統來講,就是拷貝編譯後的文件到服務器,不用重啓服務器也能夠,因此我這裏就用最簡單的方法上傳)

name 選擇以前配置的 FTP Server

Verbose output in console 選項是指上傳文件的過程是否在控制檯顯示,不通常不須要勾選。

Retry 鏈接失敗重試次數

Delay 鏈接失敗後的重試間隔

Transfers

Transfer Set Source files  設置要上傳的文件路徑 ** 表示上傳路徑下的文件夾及子文件夾(相對路徑是項目的workspace)

Remove prefix 去掉前綴,指在上面的時候去掉路徑的前綴。好比咱們上傳一個路徑是 \pub\website\** 的路徑,實際咱們指但願上傳website中的文件,並不要\pub\website 這樣的目錄,就能夠去掉路徑前綴。


更多高級詳細的配置方式能夠查看官網說明:https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+FTP+Plugin


這樣配置完成後,編譯部署構建就完成了。接下來再建立一個自動化測試構建,部署完成後,自動觸發自動化測試構建。

##4. 自動測試

新建項目過程和上面系統建立構建方式同樣,svn地址配置成本身的測試腳本便可。

關鍵步驟在,【構建觸發器】


這裏選擇 Build after other projects are built.

Projects to watch 填寫要測試的項目構建,這樣若是 ERP系統 項目編譯部署完成後,就會觸發自動化測試的構建。





相關文章
相關標籤/搜索