테스트 탐색기 (VS)에 '<알 수없는 프로젝트>'가 표시됨


157

아래의 모든 것은 .NET Framework 4.7 및 NUnit + NUnit3TestAdapter를 사용하여 VS2019에서 이루어집니다.

Exitus.Tests라는 어셈블리를 만들고 몇 가지 단위 테스트를 추가했습니다. 그러나 Nuget과 관련하여 해결할 수없는 몇 가지 문제를 해결하려면 Exitus.UnitTests라는 다른 프로젝트를 만들고 이전 프로젝트에서 한 번만 파일을 삭제했습니다 (네임 스페이스 변경 포함).

이제 새 테스트 프로젝트가 탐색기에서 올바르게 작동했지만 이전 프로젝트의 "유령"이 남아있었습니다.

Visual Studio 테스트 탐색기

테스트를 실행하려고하면 출력 창에 다음 오류가 표시됩니다.

System.InvalidOperationException : 다음 TestContainer가 Microsoft.VisualStudio.TestWindow.Client.TestContainer.TestContainerProvider에서 'C : \ Users \ xxx \ Source \ Repositories \ Expire \ Exitus.Tests \ bin \ Debug \ Exitus.Tests.dll'을 찾을 수 없습니다. .d__46.MoveNext () --- 예외가 발생한 이전 위치의 스택 추적 끝 --- System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (Task task) )에서 Microsoft.VisualStudio.TestWindow.Controller.TestContainerConfigurationQueryByTestsBase.d__6.MoveNext () (...)

스택 추적은 훨씬 길지만 궁금한 점은에서 테스트 컨테이너를 찾을 수 없다는 두 번째 줄 \Exitus.Tests\bin\Debug\Exitus.Tests.dll입니다. 이것은 이전 테스트 프로젝트의 이름으로 제거하고 삭제했습니다. 전체 프로젝트에서 해당 용어를 검색했지만 Exitus.Tests결과가 반환되지 않습니다.

어쨌든이 '유령'프로젝트를 강제로 제거해야합니까?


답변:


323
  1. 닫기 Visual Studio.
  2. solutionfolder \ .vs \ solution name \ v16 \ TestStore \ number*.testlog 파일을 삭제하십시오 .

3
많은 피드백을받은 후 수락 응답으로 변경하기로 결정했습니다. 나는 여전히 Alex B.의 대답을 사용했는데, 추적 할 수없는 git 저장소에 중요한 파일이있는 한 잘 작동합니다.
Noceo

13
.vs 숨겨진 디렉토리입니다. 숨겨진 디렉토리를 볼 수 있도록 파일 탐색기를 설정하십시오
citronas

1
단호하지 않은, 나는 "git clean -xfd"로 해결했다
Zax

3
.vs 폴더 또는 windows temp / roaming / local 폴더에서 magic hidden 파일을 제거하면 Visual Studio 오류의 99 %가 해결됩니다. : C
스크랩

5
나는 이것에 대해 내부적으로 물었다. 분명히 문제는 16.5에서 해결되었습니다.
Drew Noakes

21

나는 지금 같은 문제에 직면했다. 정리가 도움이되었습니다. 마지막으로 VS에 정리 문제가 있었기 때문에 (일부 DB-lock은 실제 정리가 수행되지 않음) 작업 정리는 다음과 같습니다.

  1. VS를 닫습니다.
  2. 솔루션 폴더의 Git Bash : git clean -xfd

아마 도움이 될 것입니다.


2
효과가있었습니다. 대단히 감사합니다. 그것은 그런 경우가 있다면, 나는 그것이 :-) 메이크업에 입구의 지옥 일단하다고 말해야한다, 당신의 첫 번째 게시물처럼 보이는
Noceo

XUnit 테스트 실행기를 사용하여 테스트 DLL간에 테스트를 옮길 때 테스트 탐색기 결과에서 "알려진 프로젝트"가 몇 번 나타났습니다. 솔루션 파일과 동일한 폴더에있는 .vs 폴더를 삭제하는 것으로 충분했습니다.
Frank Schwieterman

8
이 답변은 소스 제어에없는 것을 제거하므로 launchSettings.json과 같은 것을 체크인하지 않으면 pwretmo의 답변을 대신 사용할 수 있습니다.
Sean

4
@pwretmo 답변은 특정 문제에 대한 안전하고 직접적인 답변입니다.
snowcode

2
커뮤니티가 말했습니다. 다른 사람들이 최선을 다할 수 있도록 허용 된 답변을 변경했습니다. 이 답변은 여전히 ​​괜찮 았지만 특정 위험을 초래할 수 있다고 생각합니다. 그래도 도움을 주셔서 감사합니다 :-).
Noceo

0

이 솔루션들 중 어느 것도 나를 위해 일하지 않았습니다. 나는에 의해 테스트 탐색기 작업을 얻을 수 있었다 비주얼 스튜디오를 폐쇄삭제 은 " .vs "폴더에 있습니다. 그런 다음 솔루션을 다시 열고 다시 빌드하십시오.

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