2012-09-04 115 views
1

我已配置Jenkins MSTestRunner插件,以使用MSTest可执行文件的以下路径:'C:\ Program Files(x86)\ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ mstest.exe”。然而,尽管这条道路是正确的,编译如下失败:Jenkins MSTestRunner插件无法启动mstest.exe

cmd.exe /C "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\mstest.exe" "/resultsfile:/resultsfile testresults" /testcontainer:Project.Tests/bin/Debug/Project.Tests.dll && exit %%ERRORLEVEL%% 
'C:\Program' is not recognized as an internal or external command, operable program or batch file. 

问题到底出在这里,我想这将是作为mstest.exe被安装了Visual Studio,下面配置MSTestRunner插件的正常方式哪些通常又安装在'C:\ Program Files(X86)'下?我如何解决这个问题?

+1

由于错误消息指出,路径解析停止在该空间处,并且路径的其余部分在此处被视为参数。所以命令环境实际上试图执行位于C:\的“程序”。我猜这会工作,如果你用双引号(“)的路径。 – CIGuy

+0

@CIGuy我试过了,没有帮助 – aknuds1

+0

我不知道这是否是一个选项,但你可以添加”C: \ Program Files(x86)\ Microsoft Visual Studio 11.0 \ Common7 \ IDE“添加到该机器上的Path环境变量,然后在Jenkins配置中指定mstest.exe? – CIGuy

回答

4

已经从插件作者处收到MSTestRunner 0.2.0未处理MSTest路径中的空格的确认。我工作围绕这一问题,而不是通过创建“执行Windows批处理命令”,在詹金斯生成步骤直接调用mstest.exe,在那里我已经用双引号包围mstest.exe路径:

"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\MSTest.exe" /testcontainer:Project.Tests\bin\Debug\Project.Tests.dll /resultsfile:testresults.trx 
+0

有没有人,如果这是固定的?因为我看到它的插件是从来没有在第一个地方工作,如果不能达到mstest.exe – user1025852

+0

@ user1025852不知道,hav我什么都听不到。 – aknuds1

1

发现我问题是2倍。

  1. 文件条目从本地工作空间目录
  2. 必须在全球工具配置MSTEST然后构建步骤中选择该实例。