我在C#visual studio项目中遇到以下错误:
命名空间“Microsoft”中不存在类型或命名空间名称“VisualStudio”(您是否缺少程序集引用?)
我也试图找到microsoft.dll文件,但无法获得任何参考 . 我在搜索错误的DLL吗?
using Microsoft.VisualStudio.TestTools.UnitTesting;
using Kya.MsFx.Services.Swiper;
namespace Kya.MsFx.Devices.Swiper.Test
{
[TestClass]
public class SwiperWindowTest
{
private SwiperWebServiceHost m_SwiperWS = null;
/// <summary>
/// start web service on a separate thread, so tests
/// can be executed withut blocking the application thread
/// </summary>
[ClassInitialize]
public void SetupSwiperTests() {
m_SwiperWS = SwiperWebServiceHost.StartService();
}
/// <summary>
/// Stop service started during class initialize and kill the thread
/// </summary>
[ClassCleanup]
public void CleanupSwiperTests() {
m_SwiperWS.Stop();
}
/// <summary>
/// simulate init, swipe, clear operations
/// </summary>
[TestMethod]
public void TestSwiperService()
{
MessageBox.Show("test");
}
}
}
10 回答
移动项目并删除它的包文件夹后,我遇到了这个问题 . Nuget显示安装了MSTest.TestAdapter和MSTest.TestFramework v 1.3.2 . 修复似乎是以管理员身份打开VS并且构建之后我能够在没有管理员权限的情况下重新打开和构建 .
只需参考此URL并下载并保存所需的dll文件@此位置:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies
网址是:
https://github.com/NN---/vssdk2013/find/master
你必须添加引用
它可以在“C:\ Program Files \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ PublicAssemblies \”目录中找到(适用于VS2010专业版或更高版本; .NET Framework 4.0) .
或右键单击您的项目并选择:添加引用...> .NET:
还有一个不错的nuget package . 它会将dll拉到您的包文件夹 . 您需要手动添加对dll的引用 .
NOTE :此软件包不是Microsoft官方软件包 .
要解决此问题,我必须执行以下操作:
使用管理权限启动Visual Studio安装程序
如果它提示您安装Visual Studio更新,请在继续之前执行此操作
出现提示时,单击“修改现有安装”按钮
单击顶部的"Individual components"选项卡/ Headers
向下滚动到"Debugging and testing"部分
选中"Web performance and load testing tools"旁边的框
单击对话框右下角的“修改”按钮以安装缺少的DLL
安装DLL后,您可以使用Agent007在其答案中指示的方法添加对它们的引用 .
如果您使用的是Visual Studio 2017社区,则位置为:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ReferenceAssemblies\v2.0
你想要的DLL在那里:
Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
显然它位于Visual Studio 2010 Professional版本的
C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\
目录中,但请注意10.0
将更改为与发布年份相对应,即VS 2013是版本12.0,VS 2015是版本14.0,VS 2017是15.0 . (不支持VS Express,而是需要通过NuGet包管理器安装NUnit NuGet包 . )您转到 References ,右键单击,选择 Add Reference, Browse . 导航到路径,然后双击该文件 .
然后,您需要在Unit Test类的顶部使用
using
语句:using Microsoft.VisualStudio.TestTools.UnitTesting;
即对于Visual Studio 2013,我将引用此程序集:
你可以在这里找到它:
并且不要忘记实施:
您正在寻找的包含该命名空间的DLL是
注意单元测试cannot be used in Visual Studio Express .
我知道这已经过时了,这就是我的谷歌搜索中出现的情况 . 我需要在NuGet上引用这些包:
如果您来到这里是因为您的VSTS构建作业失败并出现上述错误消息 . 确保您至少使用nuget任务的2. *版来恢复软件包 .