.NET Core 2.0 和 xUnit 没有 运行
.NET Core 2.0 and xUnit doesn't run
Visual Studio 2017 + .NET Core 2.0。我从模板创建了一个全新的 xUnit 测试项目:
项目 (.csproj) 文件:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0" />
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
<PackageReference Include="xunit" Version="2.3.1" />
<PackageReference Include="xunit.runner.console" Version="2.3.1" />
</ItemGroup>
</Project>
测试
public class Class1
{
[Fact]
public void Test1()
{
Assert.Equal(1, 1);
}
}
每当 运行 或调试测试我得到 "Inconclusive: Test not run"。我错过了什么?
我下载了这个样本:
https://github.com/xunit/xunit.integration
构建这个解决方案时我得到:
Error MSB3073 The command "dotnet
"C:\Users\supersuper.nuget\packages\xunit.runner.console.3.1\build..\tools\netcoreapp2.0\xunit.console.dll"
"C:\Users\supersuper\Desktop\xunit.integration-master\console\v2x_netcoreapp20\bin\Debug\netcoreapp2.0\v2x_netcoreapp20.dll""
exited with code
1. v2x_netcoreapp20 C:\Users\supersuper\Desktop\xunit.integration-master\console\v2x_netcoreapp20\v2x_netcoreapp20.csproj 13
Visual Studio版本:
dotnet --version
2.0.2
是不是因为 ReSharper?
缺少依赖项,应该添加这些依赖项才能在 Visual Studio 2017 年和从控制台进行 运行 测试:
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0" />
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
<PackageReference Include="xunit.runner.console" Version="2.3.1" />
我还没有验证第二个是否需要支持 Visual Studio。尽管如此,我在测试资源管理器中的测试 运行 并显示了详细的 运行 结果。 vstest.descoveryengine.exe
存在一些问题,MSTest v2 项目不需要这些问题,但在控制台和测试资源管理器中进行的一般测试都有效。
我已经从 Visual Studio 2017 v15.4.2 中的模板创建了一个 xUnit .NET Core 测试项目,一切都开箱即用。
项目看起来不一样:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.5.0-preview-20170810-02" />
<PackageReference Include="xunit" Version="2.2.0" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" />
</ItemGroup>
</Project>
测试class:
using System;
using Xunit;
namespace XUnitTestProjectTmpl
{
public class UnitTest1
{
[Fact]
public void Test1()
{
}
}
}
测试结果:
Visual Studio 2017 + .NET Core 2.0。我从模板创建了一个全新的 xUnit 测试项目:
项目 (.csproj) 文件:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0" />
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
<PackageReference Include="xunit" Version="2.3.1" />
<PackageReference Include="xunit.runner.console" Version="2.3.1" />
</ItemGroup>
</Project>
测试
public class Class1
{
[Fact]
public void Test1()
{
Assert.Equal(1, 1);
}
}
每当 运行 或调试测试我得到 "Inconclusive: Test not run"。我错过了什么?
我下载了这个样本: https://github.com/xunit/xunit.integration
构建这个解决方案时我得到:
Error MSB3073 The command "dotnet "C:\Users\supersuper.nuget\packages\xunit.runner.console.3.1\build..\tools\netcoreapp2.0\xunit.console.dll" "C:\Users\supersuper\Desktop\xunit.integration-master\console\v2x_netcoreapp20\bin\Debug\netcoreapp2.0\v2x_netcoreapp20.dll"" exited with code 1. v2x_netcoreapp20 C:\Users\supersuper\Desktop\xunit.integration-master\console\v2x_netcoreapp20\v2x_netcoreapp20.csproj 13
Visual Studio版本:
dotnet --version
2.0.2
是不是因为 ReSharper?
缺少依赖项,应该添加这些依赖项才能在 Visual Studio 2017 年和从控制台进行 运行 测试:
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0" />
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
<PackageReference Include="xunit.runner.console" Version="2.3.1" />
我还没有验证第二个是否需要支持 Visual Studio。尽管如此,我在测试资源管理器中的测试 运行 并显示了详细的 运行 结果。 vstest.descoveryengine.exe
存在一些问题,MSTest v2 项目不需要这些问题,但在控制台和测试资源管理器中进行的一般测试都有效。
我已经从 Visual Studio 2017 v15.4.2 中的模板创建了一个 xUnit .NET Core 测试项目,一切都开箱即用。
项目看起来不一样:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.5.0-preview-20170810-02" />
<PackageReference Include="xunit" Version="2.2.0" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" />
</ItemGroup>
</Project>
测试class:
using System;
using Xunit;
namespace XUnitTestProjectTmpl
{
public class UnitTest1
{
[Fact]
public void Test1()
{
}
}
}
测试结果: