【问题标题】:Run both 32-bit and 64-bit tests in the same run?在同一运行中同时运行 32 位和 64 位测试?
【发布时间】:2015-05-19 20:31:51
【问题描述】:

我正在使用 VS2013 和 MSTest 中的 Resharper 测试运行程序运行单元测试。我有一个设置为 AnyCPU 的程序集,我有一个案例,我想针对作为 32 位程序集和 64 位程序集加载的程序运行一些单元测试。

原因是 Windows API 中有一些 DllImport 外部函数,如果我没有正确定义互操作 structs,它将在一个而不是另一个中工作。

所以我创建了两个单元测试 DLL,一个设置为 x86,另一个设置为 x64,它们都引用了被测 DLL。

我在 Resharper 中看到我可以将它指向 Local.testsettings 文件。然后在 Local.testsettings 文件中,主机页面上有一个名为“在 32 位或 64 位进程中运行测试”的下拉菜单,我可以选择“强制测试以 32 位进程运行”或“在 64 位进程中运行测试” 64 位机器上的位进程”。不幸的是,您所能做的就是在这两个选项之间来回切换,因此要么一组测试失败,要么另一组失败。

我真正想做的是基于单元测试程序集的平台目标运行它。有什么办法吗?

【问题讨论】:

    标签: .net visual-studio-2013 mstest


    【解决方案1】:

    MSTest AFAIK 无法满足您的要求。您可以使用能够并行执行的测试平台,例如Nuclear.Test。它在各种运行时和处理器架构上执行所有测试。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-16
      • 2011-10-31
      相关资源
      最近更新 更多