6

저의 삶에 대한 새로운 msbuild 기반 netcoreapp1.0 xunit 프로젝트 템플릿에서 Visual Studio 2017에서 작동하는 단위 테스트를 수행 할 수 없습니다.Visual Studio에서 작동하는 XUnit 테스트를 수행 할 수 없습니다. 2017 RC

Visual Studio (개발자 용)와 자동화 된 빌드 프로세스에서 CLI의 dotnet test 모두에서 단위 테스트가 필요하지만 일관되게 작동하지 않습니다. 여기

내가 시도 것입니다 :

기존 솔루션에서

새 프로젝트를 만들고 .NET 핵심>xUnit의 테스트 프로젝트를 선택합니다. 비주얼 스튜디오에서

빌드 프로젝트는 기본 테스트가 나타나고 성공적으로 지금 파워 쉘 프롬프트에서 dotnet test를 실행 실행 얻을 : csproj 파일로

> dotnet test 
Test run for D:\...\bin\Debug\netcoreapp1.0\MyProj.dll(.NETCoreApp,Version=v1.0) 
dotnet exec needs a managed .dll or .exe extension. The application specified was 'C:\Program' 

또는 DOTNET 시험 :

> dotnet test MyProject.csproj 
(same error as above) 

> dotnet test ..\MySolution.sln 
Couldn't find a project to run test from. Ensure a project exists in D:\... 
Or pass the path to the project 

내가 추가하는 경우를 xunit.runner.console 또는 xunit.runner.msbuild nuget 패키지를 사용하면 Visual Studio 내부에서 작동하는 단위 테스트가 중지됩니다.

어떻게 동시에 둘 다 작동합니까?

감사합니다.

+0

@tommed, Visual Studio 명령 프롬프트에서 빌드/실행할 수 있습니까? 이 문제는 아마 VS 2017의 msbuild가 로컬 응용 프로그램이므로 msbuild의 위치, 사용 된 .targets 및 클래스 라이브러리의 위치를 ​​결정하는 데 사용되는 특수 env 변수가 있음을 의미합니다. –

+0

@MichaelBraude 감사합니다. 나는 또한 _Developer Command Prompt_와 _MSBuild Command Prompt_에서 같은 것을 시도해 보았고 같은 오류를 낳았다. – tommed

+0

NET 코어에 관한 것은 아니지만 주석으로 게시하고 있습니다. VS2017 전체 NET 4.5 프레임 워크, 동일한 문제 : 찾을 단위 테스트가 없습니다. Nuget을 사용하여 내 프로젝트 중 하나에서'xunit.runner.visualstudio'을 제거하고 다시 설치해야했습니다. 그런 다음 솔루션을 다시 빌드하고 테스트를 찾았습니다. 희망이 도움이됩니다. – Sharky

답변

7

당신이 부딪 치는 버그는 미리보기 3에 있으며 미리보기 4에서 수정되었습니다. 실행시 명령 줄에서 벗어나지 않으며 dotnet.exe가 기본적으로 C:\Program Files\dotnet에 설치되기 때문에 항상 실패합니다.

미리보기 3을 계속 사용하려면 시스템 PATH을 편집하고 C:\Program Files\dotnetC:\Progra~1\dotnet으로 바꾸는 것이 가장 간단한 해결 방법입니다.

+0

관련 버그 : https://github.com/dotnet/cli/issues/4832 –

+0

놀랍습니다 - 감사합니다 !!!!! – tommed

6

저는 이것이 좋은 대답은 아니지만 dotnet-test-xunit은 project.json 파일 만 지원한다는 것을 알고 있습니다. VS 2017은 csproj 파일로 전환하도록합니다.

내가 xUnit의 트위터 피드에 이걸 발견 : 당신이 .NET 코어 승/VS2017 RC에 사용 @xunit을하려는 경우, dotnet-test-xunit을 제거하고 xunit.runner.visualstudio 2.2 베타 4 대신을 사용합니다.

+2

이 정보를 제공해 주셔서 감사합니다.나는'dotnet-test-xunit'이 VS2017을 깨뜨린다고 결론을 내 렸습니다.'xunit.runner.visualstudio' nuget 패키지가 이미 설치되었지만 cli 테스트를 실행할 방법이 없습니다. – tommed

2

최신 RC.3에서는 테스트에서 발견되지 않은 문제가 있었으며 내장 된 테스트 탐색기를 실행할 때 출력에서 ​​Microsoft.DotNet.InternalAbstractions 1.0.0이 없다는 것을 알았습니다. 이것은 이전 버전의 .NET 코어에서도 문제 였고 해결책은 동일합니다. Nuget에서 패키지를 설치하십시오.

+0

xUnit을 이용한 테스트와 관련된 문제점이 수정되었습니다. Visual Studio 2017RC는 놀라 울 정도로 엄청난 양의 오류가 프로젝트에 도입되었으며 테스트는 즉시 사용 가능합니다. – Hekkaryk

관련 문제