【问题标题】:Visual Studio Unit Test 32-bit and 64-bitVisual Studio 单元测试 32 位和 64 位
【发布时间】:2013-11-05 02:18:05
【问题描述】:

我有一个解决方案,其中包含 C++ 和 C++/CLI 代码项目,以及一组使用 Microsoft 单元测试框架对所有这些项目进行单元测试的项目。对于 C++/CLI 项目,单元测试项目是 C# 单元测试。我目前拥有的是 32 位和 64 位平台。此外,对于每个平台,我都将单元测试项目设置为 32 位和 64 位平台以进行匹配。

我遇到的问题是,当我切换到 32 位和 64 位时,我需要转到 TEST > TEST SETTINGS > DEFAULT PROCESSOR ARCHITECTURE 并根据需要从 32 和 64 翻转。如果不这样做,我会收到来自 Visual Studio 的警告,即 64 位图像无法在 32 位进程中运行。这是有道理的,但肯定有某种方法可以自动化吗? 否则,如果我在构建机器上进行批量构建,我将无法控制这一点,单元测试将失败。

我也尝试将单元测试项目设置为 AnyCPU,但失败并显示错误消息“尝试加载格式不正确的程序”

有没有更好的办法?

【问题讨论】:

    标签: c++ unit-testing visual-studio-2012 c++-cli


    【解决方案1】:

    如果您希望在构建机器上自动化测试运行,您可以将项目设置为 AnyCPU 并运行 corflags /32bit+(或 /32bit-)以在运行单元测试之前将 .NET 程序集设置为正确的平台.

    我不知道 VS 的自动解决方案,然后有两个项目(一个 x64 和一个 x86)链接到相同的文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-06-13
      • 2013-07-17
      • 2012-08-23
      • 1970-01-01
      • 2012-01-21
      • 2013-11-21
      • 2010-12-15
      相关资源
      最近更新 更多