iT邦幫忙

DAY 6
3

使用Jenkins打造.Net CI Server系列 第 6

CI Server 06 - 加入單元測試

在上一篇文章中,我們介紹了如何開始在Jenkins內建立我們的建置工作,
它可以幫助我們在確認在版本控制系統中所commit的程式碼是可執行的,
而在今天的例子之中,將會繼續介紹如何在Jenkins中整合UnitTest,
讓程式碼除了可建置外,也能確定所進行的更動並沒有破壞原本stable的程式碼。
※在伺服器上安裝Visual Studio
為了讓CI Server可以使用Mstest進行單元測試,
必須在伺服器上先按裝Visual Studio,
使伺服器端可以使用command指令呼叫MsTest Framework。

※安裝MsTest Plugin & MsTest Runner Plugin

  1. 進入Jenkins首頁後,點選左邊的管理Jenkins,再選擇管理外掛程式
  2. 點選可用的,勾選MsTest PlugIn以及MsTestRunner PlugIn,
    選擇安裝並重啟
  3. 設定MsTest參數,回到首頁點選左邊的管理Jenkins,再選擇設定系統
  4. 找到MsTest區塊,點選Add MsTest,輸入設定 (此處以.Net 4.0為例)
    MsTest預設位置: C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe

※設定專案進行UnitTest

  1. 回到Jenkins首頁,點選我們的專案My .Net Library,點選設定
  2. 找到Build區塊,點選Add build step,選擇Run unit test with MSTest
  3. 選擇之前設定的MsTest4.0,輸入測試專案DLL位置,設定測試結果名稱
  4. 找到Post-build Actions區塊,點選Add Post-build Action,
    選擇Publish MsTest test result report
  5. 輸入測試結果位置,轉換成報表呈現在CI Server上

※執行建置並觀看結果

  1. 進入專案首頁重新建置專案之後,
    我們可以看到在畫面上出現了測試結果和測試趨勢圖
  2. 點擊趨勢圖之後,裡面還可以看到每個Class的單元測試項目和結果

※總結
在今天的文章之中,介紹了如何整合MsTest到我們的CI Server之中,
當然也可以選用自己慣用的Test Framework,
Jenkins提供了許多Plugin來方便整合併呈現報告,
現在我們的CI Server擁有了Build和UnitTest,
我們就再也不需要擔心程式從版本控制系統下載回來沒辦法Build,
或是不小心將程式碼改壞又沒人發現的情況發生囉!
歡迎大家提出任何問題,一起討論或提供指教喔 ^_^


上一篇
CI Server 05 - 新增建置工作
下一篇
CI Server 07 - 單元測試涵蓋率
系列文
使用Jenkins打造.Net CI Server30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
ChiaFeng
iT邦新手 4 級 ‧ 2015-12-24 11:09:30

我的Visual Stdio 沒有MStest.exe檔
重裝了也沒有請問要如何解決

  1. 選擇之前設定的MsTest4.0,輸入測試專案DLL位置,設定測試結果名稱

關於這一段,意味著每當我在test project做了改變,需要complie過後再把新的DLL放入版控?

我要留言

立即登入留言