Visual Studio 2015无法看到我的xUnit测试。

7
尝试将Xunit测试添加到我的ASP.NET 5项目中,我已经添加了一个类库并填写了project.json文件,内容如下:
{
  "version": "1.0.0-*",
  "description": "",
  "authors": [ "" ],
  "tags": [ "" ],
  "projectUrl": "",
  "licenseUrl": "",

  "dependencies": {
    "xunit": "2.1.0-beta2-build2981",
    "xunit.runner.visualstudio": "2.1.0-beta2-build1055"
  },
  "commands": {
    "test": "xunit.runner.visualstudio"
  },
  "frameworks": {
    "dnx451": { },
    "dnxcore50": {
      "dependencies": {
        "System.Collections": "4.0.10-beta-22816",
        "System.Linq": "4.0.0-beta-22816",
        "System.Threading": "4.0.10-beta-22816",
        "Microsoft.CSharp": "4.0.0-beta-22816"
      }
    }
  }
}

但是Visual Studio在测试资源管理器中无法识别我的任何单元测试:
public class Class1
{
    [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;
    }
}

我错过了什么?

你正在使用哪些版本的VS和运行时(DNX/KRE)? - Victor Hurdugaci
4个回答

2
我今天遇到了同样的问题。这个解决方案对我有效:
"dependencies": {
    "xunit": "2.1.0-beta3-*",
    "xunit.runner.dnx": "2.1.0-beta3-*",
    "xunit.runner.visualstudio": "2.1.0",
    "xunit.runners": "2.0.0"
  },
"commands": {
    "test": "xunit.runner.dnx"
  },

我希望这能帮到你。我需要安装3个NuGet包:xunit、xunit.runner.visualstudio和xunit.runners。


我花了很长时间(事实上一直到我重新阅读文档)才发现你使用的“commands”行。 唉! - dumbledad

0

你应该尝试使用稳定版本的xunit库,而不是beta版本。


0

使用 aspnet runner beta4 对我来说可行:
project.json

{
    ...
    "dependencies": {
        "xunit.runner.aspnet": "2.0.0-beta4"
    },
    "commands": {
        "test": "xunit.runner.aspnet"
    },
    ...
}

不出现在 IntelliSense 中 :( - Tim
即使使用最新的2.1.0-beta1-build60版本,对我来说仍然无法工作;我已经在测试项目和Web应用程序项目中尝试了。 - Tim
是的,最新版。跟踪信息为:无法启动 Microsoft.Framework.TestHost。 - Tim
你应该在 GitHub 上开一个问题。 - agua from mars
注意,当我尝试在命令行中使用dnx(正如我在网上看到的),我找不到它... - Tim
显示剩余3条评论

-1

链接的文档不可用。答案过于笼统,没有帮到我。 - Jeno Laszlo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接