无法加载应用程序或执行命令 'Microsoft.Dnx.TestHost'。可用命令:测试

Unable to load application or execute command 'Microsoft.Dnx.TestHost'. Available commands: test

正在尝试在 VS2015 中测试 ASPNET 5 应用程序。

{
  "version": "1.0.0-*",
  "description": "HoldingTank Class Library",
  "dependencies": {
    "EntityFramework.InMemory": "7.0.0-rc1-final",
    "FluentAssertions": "4.1.1",
    "GenFu": "1.0.4",
    "MyMVCProject": "1.0.0-*",
    "xunit": "2.1.0",
    "xunit.runner.visualstudio": "2.1.0"
  },
  "commands": {
    "test": "xunit.runner.dnx"
  },
  "frameworks": {
    "dnx451": { }
  }
}

但是,测试资源管理器中没有显示任何测试 window,当我按 F5 键时,我得到:

------ Discover test started ------
------ Test started: Project: HoldingTank ------
Starting  Microsoft.Dnx.TestHost [C:\Users\erik\.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1\bin\dnx.exe --appbase "C:\code\PortalSolution\src\HoldingTank" Microsoft.Dnx.ApplicationHost --port 52620 Microsoft.Dnx.TestHost --port 56351 --parentProcessId 8368]

Error: Unable to load application or execute command 'Microsoft.Dnx.TestHost'. Available commands: test.
Unable to start Microsoft.Dnx.TestHost
   ========== Discover test finished: 0 found (0:00:01.8238001) ==========

我只有一个测试,用 [事实] 装饰,但看起来还没有那么远。

查看有 "unable to load" 错误的类似问题(但找不到任何特定于 TestHost 的问题),我尝试确保测试项目和应用程序都以相同的框架为目标,但无法' 发现任何差异。我在事件日志中没有看到任何内容。

有什么建议吗? - 甚至不知道从哪里开始解决这个问题。

您必须添加 "xunit.runner.dnx" 作为依赖项而不是 "xunit.runner.visualstudio"。然后它将在 VisualStudio 中工作。

由于 ASP.Net 5 处于测试阶段,因此 xunit.runner.dnx 也是如此。使用与 ASP.Net RC1 匹配的当前预发布版 ... 我目前使用 2.1.0-rc1-build204 和 ASP.Net 5 RC1