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

Eri*_*ent 5 unit-testing visual-studio-2015 dnx xunit2

试图在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": { }
  }
}
Run Code Online (Sandbox Code Playgroud)

但是,测试资源管理器窗口中没有显示任何测试,当我点击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) ==========
Run Code Online (Sandbox Code Playgroud)

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

查看"无法加载"错误的类似问题(但找不到任何特定的TestHost),我已经尝试确保测试项目和应用程序都针对相同的框架,但找不到任何差异.我在事件日志中看不到任何内容.

有什么建议? - 甚至不确定从哪里开始解决这个问题.

Tho*_*mas 1

您必须添加“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 一起使用