【问题标题】:Need a work around Microsoft.QualityTools.Testing.Fakes需要解决 Microsoft.QualityTools.Testing.Fakes
【发布时间】:2015-01-02 11:04:14
【问题描述】:

我们一直在使用最新的系统 VS 12 更新 4,我们已尝试将特定版本设置为 false,但仍然出现此消息导致测试失败

Product.Business.Test.Providers.AuthenticationProvider.GivenRequestToStoreAuthenticationState_WhenParametersAreValid.ThenItShouldStoreTheAuthenticationState 抛出异常:System.IO.FileLoadException:无法加载文件或 程序集'Microsoft.QualityTools.Testing.Fakes,版本=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 或其之一 依赖关系。定位程序集的清单定义不 匹配程序集引用。 (HRESULT 异常:0x80131040)

谁能把我们从这场假灾难中拯救出来

【问题讨论】:

  • 这个answer为我解决了这个问题

标签: c# visual-studio unit-testing microsoft-fakes


【解决方案1】:

这为我解决了:

  • 删除 binobjFakesAssemblies 文件夹
  • 确保 Microsoft.QualityTools.Testing.Fakes 程序集的特定版本设置为“false”
  • 重建测试项目

【讨论】:

    【解决方案2】:

    前段时间我遇到了类似的问题。重新引用测试程序集并重新创建 Fakes 程序集为我解决了问题。

    【讨论】:

    • 感谢这个接缝修复它我非常感激我花了大约 3 个小时与许多其他方法进行斗争,但这些方法都不起作用
    • 您节省了我的 n 个小时!谢谢。
    【解决方案3】:

    在 TFS Build 中解决这个问题几天后,我发现当单元测试由 TFS 运行时,它确实是一个运行时错误。关键是“或其依赖项之一”。

    Microsoft.QualityTools.Testing.Fakes.dll

    依赖于

    Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll

    所以我将框架 DLL 复制到 Fakes 目录并签入。这样就解决了问题。

    【讨论】:

      【解决方案4】:

      在 App.config 中添加以下条目对我有用。

      <runtime> 
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <dependentAssembly> 
           <assemblyIdentity name="Microsoft.QualityTools.Testing.Fakes" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/> <bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0"/> 
          </dependentAssembly> 
         </assemblyBinding> 
      </runtime>
      

      【讨论】:

      • 给我带来麻烦的项目在 app.config 中有那个条目,只有应该是 12.0.0.0 的 newVersion 被设置为 11.0.0.0 导致我的一半测试失败。跨度>
      猜你喜欢
      • 2017-09-25
      • 1970-01-01
      • 1970-01-01
      • 2016-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-26
      • 1970-01-01
      相关资源
      最近更新 更多