我正在使用 CruiseControl.NET 和 MSTest 来构建我的 vs2008 项目并运行我的单元测试。
如果我从 Visual Studio 2008 运行测试,它们会完美运行。但是,当 CruiseControl 启动测试时,VsPerfMon.exe 和 VsTestHost.exe 进程会挂起,直到我从任务管理器中结束它们。这意味着巡航控制本身也挂起,我从来没有得到我在巡航控制中构建的结果。
有谁知道我的问题可能是什么解决方案?
谢谢,
D
我正在使用 CruiseControl.NET 和 MSTest 来构建我的 vs2008 项目并运行我的单元测试。
如果我从 Visual Studio 2008 运行测试,它们会完美运行。但是,当 CruiseControl 启动测试时,VsPerfMon.exe 和 VsTestHost.exe 进程会挂起,直到我从任务管理器中结束它们。这意味着巡航控制本身也挂起,我从来没有得到我在巡航控制中构建的结果。
有谁知道我的问题可能是什么解决方案?
谢谢,
D
检查此http://social.msdn.microsoft.com/Forums/pl-PL/tfsbuild/thread/af706a24-d47a-4a90-b3e6-beb5691f3aa0 尚未测试...
可能的解决方案是在测试运行之前添加一个 AfterCompile 目标以终止 VSPerfCmd。
<Target Name="AfterCompile">
<Message Text ="Shutdown the vsperfmon" />
<Exec Command='"C:\Program Files\Microsoft Visual Studio 9.0\Team Tools\Performance Tools\VSPerfCmd.exe" /shutdown' ContinueOnError="true" />
</Target>
这听起来像他们可能正在等待用户输入?- 您可以尝试自己在服务器上运行 msbuild 任务(或者如果您使用的是 NAnt)来检查
还要检查 CruiseControl.Net 服务正在运行的用户帐户,并可能将其切换到您的用户帐户,看看是否会改变它 - 这样您就可以知道它是否与帐户权限等有关