Resharper ошибка при запуске nunit тестов для решения в любом режиме процессора

У меня проблемы с запуском повторного тестирования моего решения для любого процессора. Я получаю ошибку

ОШИБКА System.IO.FileNotFoundException: Не удалось загрузить файл или сборку 'file:///D:_dist\path\to\my\bin\folder\JetBrains.ReSharper.UnitTestRunner.nUnit30.dll' или одну из ее зависимостей. Система не может найти указанный файл. на System.Reflection.RuntimeAssembly._nLoad(AssemblyName имя_файла, струнного CodeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& ​​stackMark, IntPtr pPrivHostBinder, булевой throwOnFileNotFound, Boolean, Boolean forIntrospection suppressSecurityChecks) при System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& ​​stackMark, IntPtr pPrivHostBinder, булева throwOnFileNotFound, булева forIntrospection, булевы suppressSecurityChecks) при System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[], значение хэш AssemblyHashAlgorithm HashAlgorithm, булевой forIntrospection, булевы suppressSecurityChecks, StackCrawlMark& ​​stackMark) в System.Reflection.Assembly.LoadFrom(String assemblyFile) в JetBrains.ReSharper.UnitTestRunner.nUnit.NUnitTaskRunner.SetupRunnerAssembly(NUnitVersion nUnitVersion) в JetBrains.ReThar tRunner.nUnit.NUnitTaskRunner.SetUpNUnitRunner(версия NUnitVersion, строка nUnitInstallDir) в JetBrains.ReSharper.UnitTestRunner.nUnit.NUnitTaskRunner.RunTestsAsIn1 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, и решение - это решение aC#/asp.net mvc с микросервисом Service Fabric (другая причина, по которой я бы не стал переходить на x86 для запуска тестов).

Любая помощь с благодарностью.

1 ответ

Решение

Если кто-то столкнется с этим, ошибка должна подтолкнуть вас к мысли о попытке выяснить, почему он пытается загрузить библиотеки ReSharper из папки bin вашего проекта.

Похоже, что ReSharper использует System.Environment.CurrentDirectory чтобы получить его dll, поэтому, когда кто-то изменил значение во время одного из тестов, он сломал последующие, когда ReSharper потребовался доступ к nunit runner.

Другие вопросы по тегам