在64位运行测试

问题描述:

我得到了一个ADO.NET驱动程序,它被编译为64位。因此我需要在64位模式下运行mstests。那可能吗?在64位运行测试

(开发机器是64位)。

Visual Studio为此提供了内置选项。这很难找到(如果你不知道在哪里看)。

双击local.testsettings文件解决方案资源管理器并在列表框中选择Hosts。然后改变图像显示。

您必须在64位操作系统上执行测试,并且您的应用程序应使用AnyCPU进行编译。

Setting to change

+1

这在修复'SPSite'时修复了** SharePoint **'FileNotFoundException'。 **在64位模式下运行IIS 6时,MSTest **需要** x64 Test Runner **进行Sharepoint'SPSite'测试。 – SliverNinja 2012-06-26 16:43:41

尝试在this blog post描述的解决方案:

  1. 备份mstest.exe和运行CorFlags.exe MSTest.exe /32BIT- /Force除去32位标志
  2. /noisolation运行测试:MSTest.exe /testcontainer:<your-assembly> /resultsfile:<your-results-file> /noisolation
  3. 如果MSTest.exe修改失败后,运行reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\StrongName\Verification\MSTest,b03f5f7f11d50a3a /f跳过强名验证
+1

大概不会令MSTEST运行作为64位的所有项目/解决方案?我只想做一个特定的项目。 – jgauffin 2011-05-04 08:05:08

+0

在没有'/ noisolation'的情况下运行应该让你使用仍然是32位的'VSTestHost.exe'运行。不过,我还没有尝试过自己。一定要备份'mstest.exe'。作为替代,您可以使用脚本在32位和64位'mstest.exe'之间来回切换。 – 2011-05-04 08:06:56

+0

也许你可以将'mstest.exe'复制为'mstest64.exe',然后运行标志移除和测试? – ZoolWay 2011-05-04 08:07:32

它在运行测试之前2013年选择测试 - >测试设置 - >默认处理器建筑 - > 64是在Visual Studio中更容易