VS2008 MSTest命令行程序在加载单元测试组件时挂起

时间:2009-05-20 19:41:21

标签: visual-studio-2008 mstest dependencies

在Visual Studio 2008 SP1中,您可以创建一个使用MSTest作为测试运行器的单元测试项目。我现在正在编写测试工作,从托管MSTest项目测试非托管C ++ MFC,这是一个非常有趣的旅程。

使用IDE的测试运行器与使用命令行应用程序MSTest.exe之间似乎存在差异。在我的方案中,测试将在IDE中正常运行并且所有测试都将通过,但是如果您运行命令行测试运行器,MSTest.exe将在尝试加载单元测试DLL时挂起。

这似乎是DLL中缺少依赖项的问题。当我在Depends.exe(Dependency Walker)中加载单元测试DLL时,Depends.exe会抱怨它无法找到msvcr90d.dll,这是VS2008调试C运行时。我将该文件复制到测试运行的Out文件夹,并尝试在测试DLL上运行mstest,但它没有解决问题。有什么想法吗?

我可以将一些DeploymentItem添加到测试或testrunco​​nfig中,但我无法找到我需要添加的内容。有关查找哪些项目应添加为DeploymentItems的任何想法?

当我针对已删除CWinApp对象的静态库进行测试时会发生这种情况。我想我必须删除它,以便没有两个CWinApp实例,对吧?

我在MSDN论坛上看过这篇帮助文章,但它还没有解决我的问题: http://social.msdn.microsoft.com/forums/en-US/vststest/thread/aa7f7567-faba-4589-b0ae-fe8d2c831c7a/ 我不确定缺少哪个程序集,并且Process Monitor中有这么多条目似乎找不到丢失的那个。有什么帮助吗?

0 个答案:

没有答案