osx上的vscode没有发现dotnetcore xunit测试

时间:2017-06-22 21:47:17

标签: macos visual-studio-code .net-core xunit

我有一个dotnetcore解决方案,其中包含一个服务层项目以及该服务层的测试项目。

根据this来自2016年的帖子,vscode应该能够自动检测我的xunit测试并允许我单独调试和运行它们。 但是,当我打开包含xunit [fact]的文件时,我没有看到任何允许我调试测试的选项:enter image description here

我认为这可能与dotnet核心的新.csproj结构有关,而不是旧的json格式。

我能够在Windows上的visual studio 2017中调试测试,还可以在vscode for osx上启用此功能吗?

2 个答案:

答案 0 :(得分:0)

您应该添加以下引用,以便VS检测您的测试。这就是您的project.json应该是这样的:

{
  "version": "1.0.0-*",

  "dependencies": {
    "xunit": "2.2.0",
    "dotnet-test-xunit": "2.2.0-*",
    "xunit.runner.visualstudio": "2.2.0",
    "Microsoft.AspNetCore.TestHost": "1.1.2",
    "Microsoft.DotNet.InternalAbstractions": "1.0.0",
    "Microsoft.NET.Test.Sdk": "15.0.0",
  },
  "frameworks": {
    "netcoreapp1.1": {
      "dependencies": {
        "Microsoft.NETCore.App": {
          "type": "platform",
          "version": "1.1.1"
        }
      },
      "imports": [
        "dotnet5.4",
        "portable-net451+win8"
      ]
    }
  },
  "testRunner": "xunit"
}

重要的是,您必须将testrunner设置为xunit,并同时添加Microsoft.DotNet.InternalAbstractions

我在挣扎了一个小时之后发现了这个......

答案 1 :(得分:-1)

这个帖子两个月没有动作,所以这是我的贡献。

您是否从测试目录运行dotnet test?我遇到了同样的问题(在OSX上的VSCode中),天真地期望从解决方案目录运行测试。他们没有。

相关问题