“Microsoft.VisualStudio.TestTools.UnitTesting”누락 된 dll를 찾을 수있는 곳은?


131

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");
    }
}
}

1
어셈블리 참조를 추가 한 후에도 여전히 동일한 오류가 발생 Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll합니까?
Joachim Isaksson

답변:


144

에 대한 참조를 추가해야합니다

Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll 

"C : \ Program Files \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ PublicAssemblies \"디렉터리 (VS2010 Professional 이상, .NET Framework 4.0)에서 찾을 수 있습니다.

또는 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 참조 추가 ...> .NET :을 선택하십시오. 또는 참조 추가 ...> .NET을 클릭하십시오.


2
이것이 왜 받아 들여졌습니까? 의견은 도움이되지 않았 음을 나타냅니다. 누군가가 자세히 설명해 주시겠습니까?
sirdank

@sirdank 당신은 OP 외에는 아무도 해결책으로 답을 받아 들일 수 없다는 것을 알고 있습니까? OP에 도움이되지 않았다면 그는 수락하지 않았을 것입니다.
Agent007

4
@ Agent007 알고 있습니다. 그러나 OP가 작동하지 않았다는 의견을 남긴 OP는 적어도 더 많은 일을해야한다고 제안합니다. 무엇을 더해야하는지 알아 낸 후에는 그러한 설명을 남기지 않는 것이 도움이되지 않는 것 같습니다.
sirdank

6
방금이 문제가 있었고이 대답이 해결책이었습니다. 왜 이것이 사실인지에 대한 통찰력이 있습니까? 네임 스페이스 Microsoft.VisualStudio.TestTools.UnitTesting와 어셈블리가 왜 그렇 Microsoft.VisualStudio.QualityTools.UnitTestFramework습니까? 그들은 왜 같은 이름을 지을 수 없었습니까?
Alan Thomas

내가 트립 된 한 가지 방법은 팀 빌드가 빌드 될 때 버전에 따라 다른 폴더를 찾는 것입니다. VS 2010 스튜디오 10.0는 Microsoft Visual, VS 2013 스튜디오 12.0는 Microsoft Visual, VS 2015에 대한 마이크로 소프트 비주얼 스튜디오 14.0
라이언 게이츠

67

나는 이것이 오래되었다는 것을 알고 있습니다. 이것이 Google 검색에서 나온 것입니다. NuGet에서 이러한 패키지를 참조해야했습니다.

여기에 이미지 설명을 입력하십시오


필자의 경우 (VS2019)이 패키지를 업그레이드해야하고 문제가 해결되었습니다. 건배!
RJFalconer

이것은 나를 위해 완벽하게 작동합니다. Rider를 사용하고 응용 프로그램은 원래 VS로 빌드되었습니다. 이것을 넣어 주셔서 감사합니다.
Yatin

17

해당 네임 스페이스가 포함 된 찾고있는 DLL은

Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll

Visual Studio Express 에서는 단위 테스트를 사용할 수 없습니다 .


3
다운로드 링크를 제공해 주시겠습니까?
Amit Pal

@AmitPal Visual Studio의 어떤 버전이 있습니까? 대부분의 에디션에 포함되어야합니다.
Joachim Isaksson

Visual Studio 2010 및 .net 4.0
Amit Pal

@AmitPal DLL 경로에 대한이 질문에 대한 내 대답을 참조하십시오. 거기 있어야합니다.
Agent007

5
@AmitPal Visual Studio 2010 Express에는 해당 DLL이 없으며 장치 테스트를 수행하기 위해 추가 할 수 없습니다 (nUnit과 같은 타사 테스트 도구를 사용해야 함) 전문가 이상을 사용하는 경우 agent007의 답변을 참조하십시오.
Joachim Isaksson

10

좋은 너겟 패키지도 있습니다 있습니다. dll을 패키지 폴더로 가져옵니다. dll에 대한 참조를 수동으로 추가해야합니다.

참고 :이 패키지는 공식 Microsoft 패키지가 아닙니다.


1
VSget이 포함 된 .net 4.0 용 프로젝트에서 너겟 패키지를 설치하지 못했습니다. 버전의 유일한 옵션은 11.0.50727.1이었습니다.
WebComer

1
이 Nuget이 Microsoft 소유인지 말할 수 있습니까? 그것은 마이크로 소프트 어셈블리를 포함하는 개인적인 덩어리 인 것 같습니다
BozoJoe

9

이 문제를 해결하려면 다음을 수행해야합니다.

  1. 관리자 권한으로 Visual Studio Installer를 시작하십시오.
  2. Visual Studio에 업데이트를 설치하라는 메시지가 표시되면 계속하기 전에 설치하십시오.
  3. 메시지가 표시되면 버튼을 클릭하여 기존 설치 수정
  4. 상단의 "개별 구성 요소"탭 / 헤더를 클릭하십시오
  5. "디버깅 및 테스트"섹션으로 스크롤하십시오.
  6. "웹 성능 및로드 테스트 도구"옆의 상자를 선택하십시오.
  7. 누락 된 DLL을 설치하려면 대화 상자의 오른쪽 하단에있는 수정 버튼을 클릭하십시오.

DLL이 설치되면 Agent007이 자신의 답변에 표시 한 방법을 사용하여 참조를 추가 할 수 있습니다.


1
"웹 성능 및로드 테스트 도구"가 더 이상 나타나지 않습니다. 대신 무엇을 선택하겠습니까?
Shafiq Jetha

@ShafiqJetha, 여전히 "웹 성능 및로드 테스트 도구"옵션이 표시됩니다. Visual Studio Enterprise 2017-15.8.9를 사용하고 있습니다. 어떤 버전을 사용하고 있습니까? 위의 게시물을 작성한 이후 Microsoft가 설치 프로그램의 인터페이스를 약간 변경 한 것 같습니다. Visual Studio Installer를 시작하면 (관리자 권한으로 실행) "업데이트"및 "시작"버튼 오른쪽에있는 "추가"버튼을 클릭 한 다음 "수정"을 선택한 다음 목록의 4 단계부터 다시 시작하십시오. 위의 내 게시물.
S. Hooley

Visual Studio 2017 용 빌드 도구 설치 프로그램을 사용하고 있으므로 설명 할 수 있습니다.
Shafiq Jetha

@ShafiqJetha 당신은 무엇을 사용하게 되었습니까?
Vin Shahrdar

@VinShahrdar 나는 정직하게 기억할 수 없다. 이것은 오래 전 일이었습니다. 다른 사람의 NuGet 패키지를 사용하여 필요한 DLL을 가져 와서 문제를 해결했다고 생각합니다. 아니면 DLL을 저장소에 저장했을 수도 있습니다. 솔직히 기억이 안나요. 죄송합니다.
Shafiq Jetha

8

Visual Studio 2017 커뮤니티를 사용하는 경우 위치는 다음과 같습니다.

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ReferenceAssemblies\v2.0

원하는 DLL이 있습니다. Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll

분명히 C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\Visual Studio 2010 Professional 버전 의 디렉토리에 있지만 10.0릴리스 연도에 따라 변경 될 것입니다. 즉, VS 2013은 버전 12.0, VS 2015는 버전 14.0, VS 2017은 15.0입니다. (VS Express는 지원되지 않으며 대신 NuGet 패키지 관리자를 통해 NUnit NuGet 패키지를 설치해야합니다.)

참조 로 이동하여 마우스 오른쪽 단추를 클릭 한 후 참조 추가, 찾아보기를 선택 하십시오 . 경로로 이동 한 다음 파일을 두 번 클릭하십시오.

그런 다음 usingUnit Test 클래스 상단에 진술 이 필요합니다 .

using Microsoft.VisualStudio.TestTools.UnitTesting;


1
찾아보기 란 왼쪽의 찾아보기 폴더가 아니라 맨 아래의 찾아보기 단추를 의미합니다.
Alan Baljeu

@AlanBaljeu 매우 사실입니다.
vapcguy

0

즉 Visual Studio 2013의 경우이 어셈블리를 참조합니다.

Microsoft.VisualStudio.Shell.14.0.dll

여기에서 찾을 수 있습니다.

C : \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ Extensions \ BugAid 소프트웨어 \ BugAid \ 1.0

구현하는 것을 잊지 마십시오.

Microsoft.VisualStudio 사용;


0

VSTS 빌드 작업이 위의 오류 메시지와 함께 실패하여 여기에 온 경우 패키지를 복원하기 위해 너겟 태스크의 버전 2. * 이상을 사용하고 있는지 확인하십시오.


버전 2. *가 필요한 이유를 알고 있습니까? TFS 2017을 사용 중이며이 오류가 발생했습니다.
DylanSp

방금 QA에서 UAT로 코드를 들어 올렸으며 SAME 컴퓨터에서 동일한 솔루션의 동일한 상위 폴더에있는 SAME 단위 테스트를 테스트하고 있습니다. 하지만 nooo .. 갑자기 unittest를 찾지 못했습니다 .... 나는 그들이 만든 Microsoft의 Path 지옥에 너무 지쳤습니다.
크리스천

0

프로젝트를 이동하고 패키지 폴더를 삭제 한 후이 문제가 발생했습니다. Nuget은 MSTest.TestAdapter 및 MSTest.TestFramework v 1.3.2가 설치되었음을 보여주었습니다. 수정은 VS를 관리자로 열고 빌드하는 것처럼 보였습니다. 그 후 관리자 권한없이 다시 열고 빌드 할 수있었습니다.


0

'Microsoft.VisualStudio.QualityTools.UnitTestFramework "NuGet 패킷에 대한 참조를 추가하면 성공적으로 빌드됩니다.


나는이 정확한 솔루션을 제안하는 다른 7 개의 항목이 독자에게 전달되지 않는다고 확신합니다. 반복하면 반복이 더 좋습니다.
기독교

0

.net core 3.1 프로젝트를 실행하는 Visual Studio 2019에서는 오류를 해결하기 위해 최신 테스트 프레임 워크를 설치해야합니다.

이를 수행하는 가장 쉬운 방법은 [테스트] 주석 (빨간색 밑줄 표시) 위에 브라우저를 놓고 제안 된 수정 사항을 선택하는 것입니다. 필요한 것은 "최신 테스트 프레임 워크를 찾아서 설치하는 것"입니다.


-4

이 URL을 참조하여 필요한 dll 파일을이 위치에서 다운로드하여 저장하십시오.

C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies

URL은 https://github.com/NN---/vssdk2013/find/master

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.