2016-12-09 3 views
5

Ich habe gerade mein Projekt auf .Net Core 1.1 aktualisiert und alle meine Tests werden jetzt nicht entdeckt. Es funktioniert gut, wenn es in der alten Version (Net-Core 1.0) warXUnit Tests nicht mehr in .Net Core 1.1

Hier finden Sie die Meldung in VS 2015 Ausgabefenster erzeugt durch XUnit

------ Discover test started ------ 
Discovering tests in 'C:\TW\websites2016\AssetsDB\src\Tests\project.json' ["C:\Program Files\dotnet\dotnet.exe" test "C:\TW\websites2016\AssetsDB\src\Tests\project.json" --output "C:\TW\websites2016\AssetsDB\src\Tests\bin\Debug\netcoreapp1.1" --port 61778 --parentProcessId 7316 --no-build] 
'test-xunit' returned '-532462766'. 
========== Discover test finished: 0 found (0:00:01.7697049) ========== 

Codes in project.json

{ 
    "version": "1.0.0-*", 
    "testRunner": "xunit", 

    "dependencies": { 
    "Microsoft.EntityFrameworkCore.SqlServer": "1.1.0", 
    "AssetsDB": { "target": "project" }, 
    "xunit": "2.2.0-beta4-build3444", 
    "dotnet-test-xunit": "2.2.0-preview2-build1029", 
    }, 

    "frameworks": { 
    "netcoreapp1.1": { 
     "dependencies": { 
     "Microsoft.NETCore.App": { 
      "type": "platform", 
      "version": "1.1.0" 
     } 
     }, 
     "imports": [ 
     "dotnet5.4", 
     "portable-net451+win8" 
     ] 
    } 
    } 
} 

Mein Muster Test:

namespace Tests 
{ 
    public class QueryPagingAssetsTest 
    { 
     [Fact] 
     public void should_return_PagingAssetItems() 
     { 
      Assert.True(xxxxx); 
     } 
    } 
} 

gibt es etwas, ich bin fehlt? Muss ich etwas ändern, damit es mit .Net Core 1.1 kompatibel ist?

AKTUALISIERT: Arbeits Version von project.json

Sie benötigen InternalAbstractions Bibliothek hinzuzufügen. Wenn Sie Brad's Link folgen, werden Sie aufgefordert, "xunit.runner.visualstudio" anstelle von "xunit.runner.visualstudio" zu verwenden. Aber AFAIK, es ist noch nicht arbeiten (Stand: 09/12/2016)

"dependencies": { 
    "AssetsDB": { "target": "project" }, 
    "Microsoft.DotNet.InternalAbstractions": "1.0.1-beta-003206", 
    "Microsoft.EntityFrameworkCore.SqlServer": "1.1.0", 
    "xunit": "2.2.0-beta4-build3444", 
    "dotnet-test-xunit": "2.2.0-preview2-build1029" 
    //"xunit.runner.visualstudio": "2.2.0-beta4-build1194" 
    }, 

Antwort

1

Ich verwende NUnit und die folgenden mein Problem gelöst: Die Installation Microsoft.DotNet.InternalAbstractions, Visual Studio schließen, löschen project.lock.json, öffnen Sie Visual Studio, kompilieren und ausführen Tests

1

Erstellen von Komponententests mit ASP.NET-Core 1.1, xUnit und ReSharper

Meine aktuelle Umgebung:

  • Windows-10 64-Bit-
  • Visuelle S tudio Unternehmen 2017 15,1 (26.403,7) Release
  • ReSharper 2017.1.2

Nachdem ich ein Projekt mit dotnet new xunit erstellt, konnte ich Tests erstellen und es mit ReSharper Einheit Test Session laufen.

CSPROJ

<Project Sdk="Microsoft.NET.Sdk"> 

    <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> 

    <ItemGroup> 
    <Service Include="{82a7f48d-3b50-4b1e-b82e-3ada8210c358}" /> 
    </ItemGroup> 

</Project> 

Unittest.cs

using Xunit; 

namespace ErpWebApi.UnitTests 
{ 
    public class UnitTest1 
    { 
     [Fact] 
     public void TestFail() 
     { 
      Assert.Equal(2, 3); 
     } 

     [Fact] 
     public void TestSucess() 
     { 
      Assert.Equal(2, 2); 
     } 
    } 
} 

Ergebnis:

See image only with hyperlink, no rep

Verweis auf Microsoft

Verwandte Themen