断言 XUnit 无法识别

Assert not recognized by XUnit

我想从 MSTest 迁移到 XUnit 并安装以下 VS 扩展

我可以写事实并且 运行 我的测试成功,但由于某些原因 Assert 无法识别

我没有安装任何 XUnit 扩展。相反,我将这些包从 NuGet 安装到我的测试库中。

  • xunit
  • xunit.runner.visualstudio

给予:

还有 packages.config 个:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="xunit" version="2.1.0" targetFramework="net451" />
  <package id="xunit.abstractions" version="2.0.0" targetFramework="net451" />
  <package id="xunit.assert" version="2.1.0" targetFramework="net451" />
  <package id="xunit.core" version="2.1.0" targetFramework="net451" />
  <package id="xunit.extensibility.core" version="2.1.0" targetFramework="net451" />
  <package id="xunit.extensibility.execution" version="2.1.0" targetFramework="net451" />
  <package id="xunit.runner.visualstudio" version="2.1.0" targetFramework="net451" />
</packages>

然后我创建了一个class:

using Xunit;

public class FunFacts
{
    [Fact]
    public void PassingTest()
    {
        Assert.Equal(4, Add(2, 2));
    }

    [Fact]
    public void FailingTest()
    {
        Assert.Equal(5, Add(2, 2));
    }

    int Add(int x, int y)
    {
        return x + y;
    }
}

测试随后按预期通过和失败。

步骤取自 XUnit - Getting Started Page

我遵循了所提供的评论和答案中给出的所有建议,并确保完成以下操作

  • 安装了 xunit nuget 包
  • 安装了xunit.runner.visualstudio
  • 增加了xunit库的using语句

我注意到 nuget 包不是可用的最新版本,因此我更新到解决了该问题的最新可用版本。