Visual Studio无法发现测试(xunit)

时间:2018-04-13 06:36:39

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

在发现测试时,我遇到了Visual Studio 2015 for Web的问题。 我编写了简单的.Net核心应用程序,添加了带有测试的项目,我的project.json看起来像这样:

{
  "version": "1.0.0-*",

  "dependencies": {
    "xunit": "2.3.1",
    "xunit.runner.visualstudio": "2.3.1",
    "dotnet-test-xunit": "2.2.0-preview2-build1029"
  },
  "testRunner": "xunit",
  "frameworks": {
    "net461": {
    }
  }
}

然后在我的测试项目中,我写了第一个测试:

using Xunit;

namespace Tests
{
    public class Class1
    {
        public Class1()
        {

        }

        [Fact]
        public void HelloWorld()
        {
            Assert.True(true);
        }
    }
}

当我构建解决方案时,我的测试未被发现,我在测试输出窗口中收到此消息:

------ Discover test started ------
========== Discover test finished: 0 found (0:00:00,0475339) ==========
------ Discover test started ------
An exception occurred while test discoverer 'DotNetTestDiscoverer' was loading tests. Exception: Could not load file or assembly 'Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies.
========== Discover test finished: 0 found (0:00:00,0145118) ==========

有趣的是甚至没有Newtonsoft.Json版本6.0.0.0。

我尝试了以下内容:

  1. 将测试架构更改为x64
  2. 以管理员身份启动visual studio
  3. 重新开启VS
  4. 删除%TEMP%/ VisualStudioTestExplorerExtensions文件夹
  5. 创建新项目
  6. 将测试和项目架构更改为x86
  7. 注意: 当我运行dotnet测试时,它工作正常,但我想在测试窗口中进行测试,因为我无法从控制台调试测试。

    编辑: 我已经创建了导致问题的存储库,随时可以查找: https://github.com/Rodeck/XunitIssue

    EDIT2: 我正在使用.netcore sdk版本1.0.0-preview2-003131。

1 个答案:

答案 0 :(得分:0)

问题解决了 - xunit并不支持visual studio 2015快递版。