VS2010中的Microsoft.VisualStudio.TestTools.UnitTesting命名空间在哪里?
我将包含一些unit testing项目的VS2008解决scheme转换为VS2010。 转换后,我试图编译解决scheme,但我得到以下错误:
名称空间“Microsoft”中不存在types或名称空间名称“VisualStudio”(是否缺less程序集引用?)
无法using Microsoft.VisualStudio.TestTools.UnitTesting;
find命名空间声明using Microsoft.VisualStudio.TestTools.UnitTesting;
。 另外,当我尝试添加新的项目引用时,找不到Microsoft.VisualStudio.QualityTools.UnitTestFramework程序集。
有谁知道我在做什么错?
我也有这个问题,以及一个Microsoft.Data.Schema库。 答案是正确的,因为这些库在机器上和VS 10.0目录中。
问题(至less对我来说)是从VS2008转换的解决scheme和转换实用程序的目标为.NET 3.5的项目。 由于10.0库需要.NET 4.0,因此编译器无法获取它们。
解决办法是恢复使用VS2008这些解决正确的地方; 或者切换为.NET 4.0编译项目,以便您可以使用可用的库。
它被称为Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
。
您可以在C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
。
对于Visual Studio 2015用户:
有类似的问题,但与升级Prism WPF应用程序StockTraderRI从Prism 2.2到5.0使用Visual Studio 2015 5.0版本使用MEF和我需要的Unity版本。
我做的步骤是:
- 删除程序集引用
- 加回来
- 通过selectAssemblies | 扩展
- 在search框中inputMicrosoft.VisualStudio.QualityTools.UnitTestFramework
我必须为几个testing项目做这个,重复添加的最快方法就是selectAssemblies | 最近
对于VSTS 2010,请确保在参考文献中有这些内容:
-
Microsoft.VisualStudio.QualityTools.UnitTestFramework
-
Microsoft.VisualStudio.QualityTools.WebTestFramework(如果您正在进行Webtesting)
请去下载Visual Studio 2010 SP1。 安装它。 然后,它将允许您将testing项目的框架工作从以前的默认4.0更改为3.5和其他。 只需将框架工作更改为您要testing的项目的框架工作版本即可。 现在代码将和平地结合在一起,你将能够运行testing。
+ Erik Brown是对的,问题是VS2010支持将您的项目定位到.NET 3.5,但不支持.NET 3.5项目中的unit testing。
但是,由于在代码在生产环境中运行的框架下testing代码是很有意义的,所以最好使其工作。 一个简单的方法是使用NUnit,并使用Resharper从Visual Studio或NUNittesting运行器中运行testing。 NUnit与.NET v2.x – v4.x一起使用一组二进制文件。