2008-08-03 146 views
43

我期待在我的工作中引入單元測試框架。我們使用的是Visual Studio 2005(雖然我們可能會在未來6個月內轉向2008),並且主要在C#中工作。如果框架有某種IDE集成是最好的,但我願意接受沒有集成但仍然相對簡單的框架。我會以這種或那種方式抵制它,所以如果我能確定我所推的東西不是脖子上的疼痛,那對我的情況會有幫助。.NET測試框架建議

從我迄今爲止所做的研究中,顯而易見的選擇是指向nUnit,但是我希望在推薦給我的團隊之前獲得實際使用它的人的印象。

有沒有人用過nUnit?如果是這樣,我應該注意哪些缺陷或限制?那裏有其他好的選擇嗎?如果是這樣,如果你已經同時使用了nUnit,那麼我會非常欣賞他們的優點和缺點。

+0

2008. Facepalm。你應該使用2010如果你升級 – 2012-05-20 16:09:33

回答

39

我認爲NUnit你最好的選擇。通過TestDriven.NET,您可以在VS.NET內獲得很高的集成度。 (如果你使用的話,Resharper也有一個單元測試運行者)。 NUnit它使用簡單,遵循既定的範例。你也會發現很多使用它的項目/教程/指南,這總是有幫助的。

您的其他主要選擇可能是MBUnit,它越來越多地將自己定位爲BDD選擇框架(與Gallio http://www.gallio.org一起使用)。

16

斯科特Hanselman的有大約一個很好的播客,題爲:

「過去,現在和未來的.NET單元測試框架的」

Hanselminutes #112

+3

這是一個錢播客。它突出了所有主要的單元測試框架。我個人開始使用xUnit是因爲我在這個播客中聽到了什麼。 – 2009-04-18 09:05:01

6

Visual Studio 2008升級時有一個內置的以類似的方式NUnit的作品,但顯然與Visual Studio更緊密的集成(可以在每次構建運行並顯示出類似的方式來轉換結果頁面的結果測試項目類型解決方案文件),但它顯然不如NUnit成熟,因爲它非常新,我不確定它如何處理嘲諷。

但是這將是值得期待到時你的團隊轉移到VS2008

4

mbUnit值得alook,它擁有媲美NUnit一組功能,它有它自己的GUI,或者可以集成到VS如果您有Resharper。如果您正在做任何類型的TDD,我還會推薦Rhino Mocks

5

當我開始單元測試我開始NUnit,因爲它是簡單的設置和使用,目前我使用的是內置在自帶Resharper測試運行,這樣我可以很容易地在代碼和測試結果之間翻轉。 Incindntly NUnit檢測你編譯你的代碼,所以你不需要在NUnit做任何刷新。當您選擇運行特定測試時,Resharper會自動進行構建。

8

內置的單元測試VS 2008沒問題,但很難與CruiseControl.net整合,肯定比正常NUnit難得多。

因此,如果您打算進行良好的自動化測試,請聯繫NUnit

6

我們一直在使用xUnit.net。它似乎結合了所有最好的nUnit,mbUnitMSTest

+0

我主要感到遺憾的是,在我切換之前沒有試過它。 – 2009-07-20 21:24:26

5

也嘗試PEX工具 據微軟自己可能很快被集成到VSTS 和不支持NUnitMbUnitxUnit.net

我也用小控制檯應用程序來測試一個類或小型圖書館。你可以複製粘貼代碼here

4

VSTT 2010如果你正在尋找功能測試自動化應該是一個很好的選擇。 Web服務測試,UI測試,Biztalk測試和數據驅動測試支持。請看VSTT