xunit.runner.visualstudio不适用于Visual Studio

时间:2017-06-15 16:57:54

标签: c# unit-testing visual-studio-2017 xunit

我已经完成了这样的nuget安装:

Install-Package xunit.runner.visualstudio -Version 2.2.0

在我的测试项目上。

我有类似的测试:

public class When_Doing_Stuff_I_Want_To_Test
{

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

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

虽然我已经做了很多VS重启,笔记本电脑重新启动,中间休息了一天,VS 2017仍然无法发现我的测试:enter image description here

  

我该怎么做才能解决这个问题,看看我的测试?

附录

我在4.6.1下工作,所以还没有Core。

有关同一主题的问题没有帮助:

所以有很多事情要发生,没有任何帮助...

更新

我也无法让NUnit工作,也不会出现在测试资源管理器中。

更新2

我擦掉了我的项目并重新创建了这样的项目:

enter image description here

然后我复制了原始代码并添加了所有必要的引用,没有区别。

2 个答案:

答案 0 :(得分:13)

在浏览互联网后,似乎无法将 NETStandard.Library 用于测试项目......

这些是我从以下网站获得信息的链接:

可以做的是让您要测试的项目使用 NETStandard.Library 并让您的测试项目目标 Microsoft.NETCore.App 。然后,您的测试项目可以引用要测试的项目,测试将会运行。

测试项目的.csproj看起来像这样(版本可能会改变):

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

要测试的项目是:

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

最近我必须在解决方案上运行 dotnet restore 才能运行测试,所以你可能需要这样做。结果。 NET Core SDK 1.0.1被定位而不是1.0.4(我没有安装x86版本)。

答案 1 :(得分:0)

转到菜单“测试”->“测试设置”->“默认流程体系结构”->根据平台目标进行更改。