在为我的Team Build 2010执行MSTest工作流活动时,我得到了下一个输出日志错误:
MSTest
C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDEMSTest.exe /nologo /usestderr /testcontainer:"D:TFSBuildsMyProyectDebugW_DEBUGW_DEBUG_20111214.15BinaryOrderedTest1.orderedtest" /publish:"http://localhost:8080/tfs/DefaultCollection" /publishbuild:"vstfs:///Build/Build/2550" /teamproject:"MyProyect" /platform:"Mixed Platforms" /flavor:"Debug"
The directory name is invalid
如果我在本地构建服务器上执行该命令(用双引号包围MSTest.exe路径),它可以完美地工作。
如何设置MSTest活动的绝对路径?我尝试将MSTest ToolPath属性设置为:
System.IO.Path.GetFullPath("C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDE")
失败。
Thanks in advance
我通过在构建定义中使用以下命令解决了这个问题:
<Exec Command=""%VS100COMNTOOLS%..IDEMSTest.exe" /testcontainer:
在中使用变量:
%VS100COMNTOOLS%
(或%VS90COMNTOOLS%
for Visual Studio 2008)我不需要向构建服务器的PATH环境变量添加任何内容,mstest.exe
已成功解析。
我遇到的问题是运行这个进程的过程是作为SYSTEM
运行的,但是当MSTest运行时,它似乎是作为MACHINENAME$
运行的,将所有者更改为本地用户修复了这个问题,并阻止了MSTest脱离困境。