【问题标题】:Resharper error running nunit tests for solution in Any CPU mode在任何 CPU 模式下运行 nunit 测试以解决问题的 Resharper 错误
【发布时间】:2017-10-06 22:22:24
【问题描述】:

在针对任何 CPU 时,我无法为我的解决方案运行 resharper 测试。我得到的错误是

错误 System.IO.FileNotFoundException:无法加载文件或程序集 'file:///D:_dist\path\to\my\bin\folder\JetBrains.ReSharper.UnitTestRunner.nUnit30.dll' 或其依赖项之一。该系统找不到指定的文件。 在 System.Reflection.RuntimeAssembly._nLoad(AssemblyName 文件名, 字符串 codeBase、证据 assemblySecurity、RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean for Introspection, Boolean 抑制安全检查)在 System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef,证据 assemblySecurity,RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean for Introspection, Boolean 抑制安全检查)在 System.Reflection.RuntimeAssembly.InternalLoadFrom(字符串 assemblyFile,证据 securityEvidence,Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean for Introspection, Boolean suppressSecurityChecks、StackCrawlMark 和 stackMark)在 System.Reflection.Assembly.LoadFrom(String assemblyFile) 在 JetBrains.ReSharper.UnitTestRunner.nUnit.NUnitTaskRunner.SetupRunnerAssembly(NUnitVersion nUnitVersion)在 JetBrains.ReSharper.UnitTestRunner.nUnit.NUnitTaskRunner.SetUpNUnitRunner(NUnitVersion 版本,字符串 nUnitInstallDir)在 JetBrains.ReSharper.UnitTestRunner.nUnit.NUnitTaskRunner.RunTestsInAssemblies(List1 assemblies, NUnitTestAssemblySetTask assemblySetTask, Boolean useAddins, NUnitVersion nUnitVersion) at JetBrains.ReSharper.UnitTestRunner.nUnit.NUnitTaskRunner.ExecuteRecursive(TaskExecutionNode node) at JetBrains.ReSharper.TaskRunnerFramework.StartupTaskRunnerHost.Execute(TaskExecutionNode node) at JetBrains.ReSharper.TaskRunnerFramework.StartupTaskRunnerHost.ExecuteNodes(IEnumerable1 节点)在 JetBrains.ReSharper.TaskRunnerFramework.TasksPacketHandler.ThreadProc(TaskRunnerProxy 代理,IEnumerable`1 数据包,AssemblyLoader 加载器)

当我将解决方案转换为 x86 时,测试会运行(但由于这些测试对于其他使用 Resharper 的人来说运行良好,我不能直接在解决方案中创建 x86 配置)。

有谁知道问题出在哪里?我正在运行 VS2015、Resharper 2016.3.2,解决方案是带有 Service Fabric 微服务的 ac#/asp.net mvc 解决方案(另一个原因,我宁愿不必切换到 x86 来运行测试)。

非常感谢任何帮助。

【问题讨论】:

    标签: visual-studio-2015 resharper resharper-2016


    【解决方案1】:

    如果有人遇到这种情况,该错误应该会让您想到试图弄清楚为什么它会尝试从您的项目 bin 文件夹中加载 ReSharper dll。

    看起来 ReSharper 使用 System.Environment.CurrentDirectory 来获取其 dll,因此当有人在其中一个测试期间更改值时,当 ReSharper 需要访问 nunit 运行器时,它会破坏后续测试。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-03
      • 2011-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-25
      相关资源
      最近更新 更多