web-dev-qa-db-fra.com

Comment faire fonctionner NUnit3TestAdapter avec .Net Standard 2.0?

Comment faire fonctionner NUnit3TestAdapter avec .Net Standard 2.0?

Je reçois l'erreur suivante:

1> C:\Nikeza\Mobile\Nikeza.Mobile\Tests\ExampleBased.fsproj:

avertissement NU1701: Le package "NUnit3TestAdapter 3.9.0" a été restauré à l'aide de ".NETFramework, Version = v4.6.1" au lieu du cadre cible du projet ".NETStandard, Version = v2.0".

Ce package peut ne pas être entièrement compatible avec votre projet. 1> ExampleBased -> C:\Nikeza\Mobile\Nikeza.Mobile\Tests\bin\Debug\netstandard2.0\ExampleBased.dll

23
Scott Nimrod

Vous ne fournissez pas suffisamment d'informations pour diagnostiquer le problème avec votre fichier de projet, mais la version 3.9.0 de l'adaptateur NUnit fonctionne avec .NET Standard 2.0 et F #. Je pense que votre projet de test cible le .NET Standard. Il doit cibler .NET Core ou .NET 4.6.1+. Les projets de test sont traités comme des exécutables, ils doivent cibler un framework spécifique, pas .NET Standard. Cependant, le code que vous testez peut être .NET Standard.

Vous devez suivre la documentation nités testant les bibliothèques F # dans .NET Core en utilisant le test dotnet et NUnit et lire les documents NUnit, . NET Core et .NET Standard .

Votre fichier de projet devrait ressembler à ceci,

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

  <PropertyGroup>
    <TargetFramework>netcoreapp2.0</TargetFramework>

    <IsPackable>false</IsPackable>
  </PropertyGroup>

  <ItemGroup>
    <Compile Include="Tests.fs" />
    <Compile Include="Program.fs" />
  </ItemGroup>

  <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="..\MathService\MathService.fsproj" />
  </ItemGroup>

</Project>
25
Rob Prouse