gpt4 book ai didi

c# - 在 64 位环境中将指定的 NUnit 测试作为 32 位进程运行

转载 作者:太空狗 更新时间:2023-10-30 01:21:28 27 4
gpt4 key购买 nike

我有一个组件使用 OLEDB 从 Excel 文件导入数据。由于业务风险和时间限制,我的可执行 shell 被编译为 x86(32 位)以避免 64-bit OLEDB problem当组件加载到我的 32 位 shell 中时,该组件可以完美运行。

但是,我的 CI 构建进程 (TeamCity) 正在 64 位进程中运行其 TestRunner,因此针对上述功能的单元测试失败并出现常见的错误消息:

Test(s) failed. System.InvalidOperationException : The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine

我的解决方案似乎是

  1. 更改 CI 测试运行器 - 不可行,因为其他 10 个团队正在使用该测试运行器
  2. 确保此测试在 32 位进程中运行

那么,有没有办法告诉 NUnit 或 TeamCity NUnit 测试运行器在 32 位进程中运行特定测试?理想情况下,我希望相同的测试在 IDE 和 CI 中不加修改地运行。

最佳答案

在单元测试项目中将“平台目标”更改为 x86 应该可以解决问题。

关于c# - 在 64 位环境中将指定的 NUnit 测试作为 32 位进程运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15614192/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com