2010-11-04 45 views
5

我使用NUnit用於Mac上的Mono/C#,但我需要使用Microsoft.VisualStudio.TestTools.UnitTesting進行單元測試。Microsoft TestTools的UnitTesting和NUnit有什麼區別?

  • Microsoft TestTools的UnitTesting與NUnit有什麼不同?我可以只更改命名空間並重新編譯以獲得相同的結果,還是必須重寫測試?
  • 我可以將部分程序集複製到我的Mac上以運行Microsoft.VisualStudio.TestTools.UnitTesting的測試嗎?如果是這樣,應該複製哪些文件?
+1

[NUnit vs Visual Studio 2010的MSTest?]可能的重複(http://stackoverflow.com/questions/2367734/nunit-vs-visual-studio-2010s-mstest) – Andrey 2010-11-04 21:45:21

+1

這個可能會幫助你:[運行Visual工作室2008 C#(基於MSTest.exe)在單聲道單元測試](http://stackoverflow.com/questions/1249887/running-visual-studio-2008-c-mstest-exe-based-unit-tests-in-mono )。 – rsenna 2010-11-04 22:04:54

回答

4

問問自己 - 如果你已經有NUnit工作集,爲什麼需要Ms工具?

我個人已經與兩個工作,除非遺留在MS工具是很有用處的工作,我會選擇NUnit的這個工具集,由於較大的社區支持我的問題的情況下得到的。

+0

如果可能,我會繼續使用NUnit。我需要使用MS工具,因爲其他團隊成員正在使用它,而我是唯一使用Mac/Mono的人。我需要爲他們編寫測試以在PC上運行。 – prosseek 2010-11-04 21:41:02

+1

只是要清楚。 NUnit也在Windows上運行。它的所有內容都位於.NET Framework之上。 MsTest只是坐在.NET堆棧之上的另一個框架。一致性很好,但如果需要的話,也沒有理由不能運行這兩種測試框架。 – 2010-11-05 02:10:37

0

我最大的問題是MSTest需要安裝Visual Studio,即使您正在嘗試運行精益生成服務器。

NUnit可以在任何地方安裝和運行。

0

可以在不安裝Visual Studio的情況下使用MSTest。您將需要安裝Visual Studio Test Agent,該代理可從Microsoft免費下載:http://www.microsoft.com/download/en/details.aspx?id=1334

我覺得這個方法是從許可的觀點來看比手動複製MSTest.exe和它的依賴到構建服務器更好。