2010-11-04 33 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和它的依赖到构建服务器更好。