網頁

使用VS2015建立單元測試專案

使用VS2015建立單元測試專案

from Internet source

如果要在Visual Studio 2013裡的既有專案中去建立單元測試專案,大多會選擇由微軟開發的Unit Test Generator擴充套件。不過情況在Visual Studio 2015有些不一樣,VS2015不只內建快速建立單元測試專案的方式並且提供的是一個擴充性更強的建立方式。

建立單元測試專案

在VS2015,在一個即有專案中要建立單元測試專案方式和之前使用Unit Test Generator一樣,在你想測試的方法上按滑鼠右鍵即可看到很明顯的「建立單元測試」選單:

Visual Studio 2015 建立單元測試

接下是和Unit Test Generator幾乎一樣的視窗:

Visual Studio 2015 建立單元測試視窗

按下「確定」,幾乎和Unit Test Generator一模一樣的就把單元測試專案與測試方法等內容給建立起來。

不過有件事我很在意,VS2015內建的「建立單元測試」只支援「MSTest」,怎麼新版做的比舊的Unit Test Generator還差!雖然畫面上有個「取得額外擴充功能」,但在中文版是連結至一篇沒什用的文章。

代誌不是憨人想的那麼簡單。

加入NUnit測試框架

不是VS2015內建的比較差,而是比以前更好。

VS2015修改Unit Test Generator那種寫死的方式,改由「可擴充式」來新增任何測試框架的方式。什麼是可擴充式的新增測試框架?

看實例比較清楚,我們來加入NUnit測試框架的支持。

開啟我們神燈,呼叫NuGet精靈:

VisualStudio2015 Search NUnit

搜尋「nunit」可以找到「Test Generator NUnit extension」擴充套件,下載套用。

如果你有到網頁去查看,這個擴充套件在作者欄位有些特別:「NUnit Developers (Microsoft, NUnit.Org, Terje Sandstrom)」,可以看得出來,微軟在Open Source的口號不是喊假的。

VisualStudio2015 建立單元測試視窗

這一次讓我們重新新增單元測試專案,下拉選單就能選擇NUnit與NUnit2,以下加入NUnit2測試框架。NUnit 3還在Beta版,如果你想使用,一樣使用NuGet精靈來加入。可以預見未來NuGet上的測試框架套件會越來越完備。

VisualStudio2015 NUnit參考

除了專案外,連NUnit的參考都幫我們加好了,實在就貼心。

建立好測試專案要做什麼?當然不能放著好看,動動你的手,讓我們寫測試。

VisualStudio2015 執行NUnit測試

嗯,怎麼不會動?VS2015有雷嗎?(不要再當憨人)

加入NUnit Test Adapter

要讓VS2013/VS2015測試總管支援NUnit框架,需要再呼叫一次NuGet神燈精靈,一樣用nunit關鍵字即可,請加入NUnit Test Adapter套件。

VisualStudio2015 Add NUnit Test Adapter

於測試總管重新執行測試,可愛的綠燈出現了。

VisualStudio2015 NUnit test green light

VS2015裡的「建立單元測試」的可擴充方式大大增加了靈活性,只需要透過NuGet去新增你想要使用的測試框架,那麼就能快速又簡單幫你建立單元測試專案。讓我們大呼一聲:Visual Studio 2015 好威。

2 則留言:

  1. 請問使用Community版本也有這個功能嗎?

    回覆刪除
    回覆
    1. 單元測試應該是全系列都支援的。

      刪除

感謝您的留言,如果我的文章你喜歡或對你有幫助,按個「讚」或「分享」它,我會很高興的。