无法 运行 单元测试 Visual Studio 2012 Ultimate

Can't run unit test Visual Studio 2012 Ultimate

当我在 Visual Studio 2012 Ultimate 上尝试 运行 特定测试时,我收到一条错误消息:"Process with an Id of -1 is not running"(不确定翻译,抱歉)。 当我尝试执行所有测试时,错误消息是 "The specified file can't be found".

检测到我的所有测试,但执行了 none。我花了两天时间试图让这些测试工作:重新创建测试项目,运行在 IISExpress 下而不是 IIS 下测试项目,重命名我的文档中的 IISExpress 文件夹,强制编译 x86 或 x64,删除假冒的组件、清洁液……都没有用。

我使用的是built-inMSTest框架,没有安装具体的框架

这是我在调试中得到的消息:

这是我 "only" 执行时得到的结果:

英文错误信息:

------ Run test started ------
Process with an Id of -1 is not running.
========== Run test finished: 0 run (0:00:00,1050004) ==========

------ Run test started ------
The system cannot find the file specified
========== Run test finished: 0 run (0:05:16,7847051) ==========

调试 Visual Studio 本身后发现 Visual Studio 正在尝试启动 vstest.executionengine.x86.exe

您的 2012 实例中不存在:

解决方案

我从 Windows 的“程序和功能”面板修复了 Visual Studio 2012,并修复了测试。 将其升级到 Visual Studio 2012.4 似乎使测试保持在 运行 状态。如果您选择修复 2012,请确保您还 re-apply 最新的更新包(更新 4),如果您安装了更新。

在 Visual Studio 2013.4 或 2015 预览版中打开项目似乎也有效。所以似乎有什么东西坏了 Visual Studio 2012 Ultimate 并修复它解决了问题。