2017-06-15 40 views
6

Zrobiłem Nuget zainstalować tak:Czy xunit.runner.visualstudio nie działać dla Visual Studio

Install-Package xunit.runner.visualstudio -Version 2.2.0 

Na mojego projektu badawczego.

mam test podobny do tego:

public class When_Doing_Stuff_I_Want_To_Test 
{ 

    [Fact] 
    public void Can_Do_Stuff() 
    { 
     var result = DoStuff(); 

     result.ShouldNotBeNull(); 
     result.Success.ShouldBeTrue(); 
    } 
} 

Mimo, że zrobiłem wiele VS ponownym uruchomieniu ponownym uruchomieniu laptopa, lewy dziennie pomiędzy, VS 2017 nie jest jeszcze w stanie odkryć moich testów: enter image description here

Co mogę zrobić, aby to naprawić i zobaczyć moje testy?

Uzupełnienie

pracuję pod 4.6.1, więc nie jest jeszcze rdzenia.

Pytania dotyczące tego samego tematu, który nie pomogło:

Więc jest dużo dzieje okrągły, żaden z to pomaga ed ...

Aktualizacja

nie mogę NUnit do pracy albo, nie pojawi się w teście Explorer, jak również.

Aktualizacja 2

I otarł mój projekt i odtworzone projekty tak:

enter image description here

Potem kopiowane mój oryginalny kod i dodaniu wszystkich niezbędnych referencji, nie ma różnicy.

+1

Czy masz "testRunner", aw zależnościach "dotnet-test-xunit" zestaw w pliku project.json? –

+0

Co to jest 'testrunner' i' dotnet-test-xunit' nie można znaleźć nigdzie w strukturze folderów mojego rozwiązania. – Spikee

+0

Jaki jest dokładny typ projektu, którego używasz? .NET Core, czy nie? W tej chwili nie jest to łatwa konfiguracja, ze względu na złożoność typów projektów, dlatego musisz bardzo jasno określić, co robisz. –

Odpowiedz

7

Po trałowania z internetu, wydaje się, że kierowanie NETStandard.Library nie mogą być wykorzystywane do projektów badawczych ...

Były linki dostałem informację od:

Co można zrobić, to projekt, który chcesz przetestować, należy użyć NETStandard.Library i mieć swój projekt testowy docelowy Microsoft.NETCore.App. Twój projekt testowy może następnie odwołać projekt do testu i testy zostaną uruchomione.

.csproj dla swojego projektu badawczego będzie wyglądać mniej więcej tak (wersje mogą ulec zmianie):

<PropertyGroup>  
    <TargetFramework>netcoreapp1.1</TargetFramework> 
</PropertyGroup> 

<ItemGroup> 
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.0.0" /> 
    <PackageReference Include="xunit" Version="2.2.0" /> 
    <PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" /> 
</ItemGroup> 

projektu testować byłoby to:

<PropertyGroup> 
    <TargetFramework>netstandard1.4</TargetFramework> 
</PropertyGroup> 

Ostatnio miałem Aby uruchomić dotnet przywrócić na rozwiązanie, aby uruchomić testy, więc może trzeba zrobić to samo. Włącza .NET Core SDK 1.0.1 był celem zamiast 1.0.4 (nie miałem zainstalowanej wersji x86).

+0

To pomogło w uruchomieniu, dzięki za wysiłek! – Spikee