NUnit .NET Core running through Resharper

2019-03-23 17:31发布

问题:

I am trying to run NUnit tests for a .NET Core 2.0 project in Visual Studio 2017 through Resharper. I've had the test proj assembly set both as console app and class library. So it doesn't seem to be output type. The solution does not discover any unit test and just displays no results with 0 tests run.

Here is my csproj for the tests project:

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

  <PropertyGroup>
    <TargetFramework>netcoreapp2.0</TargetFramework>
    <AssemblyName>eCorp.WebStore.OrderService.Tests</AssemblyName>
    <RootNamespace>eCorp.WebStore.OrderService.Tests</RootNamespace>
    <ApplicationIcon />
    <OutputType>Exe</OutputType>
    <StartupObject />
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.5.0" />
    <PackageReference Include="NUnit" Version="3.9.0" />
    <PackageReference Include="NUnit3TestAdapter" Version="3.9.0" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\..\Core\OrderService.Domain\OrderService.Domain.csproj" />
    <ProjectReference Include="..\..\Core\OrderService.Infrastructure\OrderService.Infrastructure.csproj" />
  </ItemGroup>

</Project>

I found this already: Run NUnit tests in dotnet core

None of the provided solutions seem to work for me.

回答1:

I solved by installing the following NuGet packages

  • NUnit
  • NUnit3TestAdapter
  • Microsoft.NET.Test.Sdk


回答2:

ReSharper is known to have problems running .NET Core 2.0 tests in Visual Studio 2017. Try to run them without ReSharper.

For more information see this SO question and answers .Net Core 2.0 and xUnit doesn't run



回答3:

If you've installed the packages in D.G's answer and it still doesn't work, check if you need to update Resharper. That worked for me.