设置
我在服务器上安装了带有 Update 4 的 TFS 2015 和带有 Update 5 的 Visual Studio 2013 Professional。然后我在同一台服务器上安装了 TFS 构建代理(版本 1.95.4)。
我注意到构建代理的功能包括 MSBuild 和 VisualStudio(如预期的那样),但不包括 VSTest ......所以我手动添加 VSTest 作为包含 vstest.console.exe 文件夹的功能(是的,它在 D 驱动器上):
D:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow
我创建了一个简单的构建定义,其中包含以下步骤:
- Visual Studio Build(设置为使用版本 2013)
- Visual Studio 测试(设置为使用 2013 版)
问题
当我排队构建时,代码构建得很好,但是当测试运行时,我收到以下错误:
System.IO.FileNotFoundException:无法确定 vstest.console.exe 的位置
我试过的
我已经搜索了一个解决方案,但找不到与我在版本方面遇到同样困境的人(使用 TFS 2015 和 VS 2013 Professional)。虽然,我确实尝试了针对不同 TFS/VS 版本组合提出的多种其他解决方案,但无济于事:
确保存在以下注册表项:
HKLM\Software\Wow6432Node\Microsoft\VisualStudio\12.0
ShellFolder
有值的条目D:\Program Files (x86)\Microsoft Visual Studio 12.0\
HKLM\Software\Wow6432Node\Microsoft\VisualStudio\12.0\EnterpriseTools\QualityTools
InstallDir
有值的条目D:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow
重新安装构建代理
- 添加“VSTest”作为环境变量
- 将 Visual Studio 测试任务设置为使用“最新版本”而不是“2013”
如何让代理识别/查找 vstest.console.exe?有什么我忽略的吗?