如何让单元测试在x64平台上运行

RJ.*_*RJ. 46 .net c# asp.net visual-studio

我有一个必须在x64模式下运行的C#应用​​程序.问题是我尝试创建在x64应用程序中运行方法的单元测试,而单元测试项目甚至不会构建.尝试构建时出现以下错误.

加载C时出错:.....\bin\x64\Debug .... UnitTests.dll:无法加载测试容器'C:.....\bin\x64\Debug .... UnitTests.dll '或其中一个依赖项.如果将测试项目程序集构建为64位程序集,则无法加载它.构建测试项目程序集时,请为平台选择"Any CPU".要在64位处理器上以64位模式运行测试,必须在"主机"选项卡中更改测试设置,以便在32位进程中运行测试.错误详细信息:无法加载文件或程序集'file:/// C:..... UnitTests\bin\x64\Debug .... UnitTests.dll'或其依赖项之一.尝试加载格式不正确的程序.

我试图将单元测试更改为x64以及任何CPU,仍然无法让它运行.有没有解决这个问题?

Ste*_*rov 55

在VS 2012及更高版本中,您可以从Test菜单下选择默认目标平台Test Settings|Default Processor Architecture

Visual Studio测试设置

  • _That_是我错过的复选标记.我通过测试人员和测试项目的项目属性搜索了所有年龄,并且它归结为测试设置中的单个复选标记...§$%&#*! (2认同)

Rob*_*sen 40

我假设您正在使用Visual Studios测试框架,因为您没有提及其他.在VS2010中,您可以强制测试主机在x64中运行.将程序集构建为任何CPU或x64,然后将测试主机设置为x64.

http://msdn.microsoft.com/en-us/library/ee782531.aspx