从CruiseControl.NET的MSTest运行时,Excel进程挂起

时间:2010-03-01 11:17:49

标签: excel com mstest cruisecontrol

我正在使用带有MSTest的CruiseControl.NET来构建我的Excel加载项。我的一些测试包括打开Excel,执行一些操作和检查结果。这一切都是通过COM实现的。

如果我使用Visual Studio 2008运行测试,它们可以完美运行。但是,当CruiseControl启动测试时,Excel进程已创建但只是挂起。只有在我终止Excel进程时,测试过程才会继续。然后,webdashboard在TestInitialize函数中报告错误:它基本上只创建Excel的实例并加载我的XLL。

有没有人知道我的问题的解决方案是什么?我在构建服务器上使用Excel 2007。

谢谢,

克里斯

1 个答案:

答案 0 :(得分:1)

这通常是因为存在仍然挥之不去的未被遮挡的物体。你需要在测试清理中更加健壮(想想工作簿,工作表,工作表,范围 - 可能还有更多),或者你可以使用Process类作为TestSetUp的一部分来进行暴力攻击并杀死任何excel实例(方法。