Ошибка JetBrains Resharper 9 Ultimate Test Runner: NUnit.Core.UnsupportedFrameworkException: пропущена загрузка сборки {MyAssembly}

Похоже, это ошибка JetBrains Resharper 9.1 Ultimate Test Runner, ссылающаяся на более старую версию NUnit. Я использую в своей сборке NUnit 3.0.

[Window Title]
Unit Test Runner

[Main Instruction]
Unit Test Runner failed to run tests

[Expanded Information]
at NUnit.Core.Builders.TestAssemblyBuilder.GetCandidateFixtureTypes(Assembly assembly, String ns)
at NUnit.Core.Builders.TestAssemblyBuilder.GetFixtures(Assembly assembly, String ns)
at NUnit.Core.Builders.TestAssemblyBuilder.Build(String assemblyName, Boolean autoSuites)
at NUnit.Core.Builders.TestAssemblyBuilder.Build(String assemblyName, String testName, Boolean autoSuites)
at NUnit.Core.TestSuiteBuilder.Build(TestPackage package)
at NUnit.Core.SimpleTestRunner.Load(TestPackage package)
at NUnit.Core.ProxyTestRunner.Load(TestPackage package)
at NUnit.Core.RemoteTestRunner.Load(TestPackage package)
at JetBrains.ReSharper.UnitTestRunner.nUnit.BuiltInNUnitRunner.RunTests(IRemoteTaskServer server, Dictionary`2 tests, Dictionary`2 fixtures, List`1 explicitly, Boolean useAddins, List`1 assemblies)

РЕДАКТИРОВАТЬ: проблема исчезнет с обновлением Resharper до версии 10.


person Pouya Yousefi    schedule 24.11.2015    source источник


Ответы (5)


Как упоминал Юсефи, это исправлено обновлением ReSharper до версии 10. У меня была такая же проблема, и это решило ее.

person Evan M    schedule 01.12.2015
comment
К сожалению, нет .. Я сделал новую установку resharper 10 ultimate, но проблема осталась прежней. - person Rob; 08.12.2015
comment
@rob Мне также пришлось перезапустить Visual Studio. Вы пробовали это? - person Evan M; 08.12.2015
comment
хорошая точка зрения. Наверное, нет, потому что я только что обновился. Я попробую это позже сегодня. - person Rob; 09.12.2015
comment
Хотел бы отметить, что обновление до Resharper 10 не является приемлемым решением этой проблемы. Это возможно только в том случае, если ваша лицензия позволяет это. Должно быть лучшее решение, работающее и на 9.1. Я использую версию 9.2 и столкнулся с той же проблемой. VS2015 - person Bram Vandenbussche; 09.12.2015
comment
Понижение nunit до версии до 3.0, похоже, помогает. Хотя для меня это тоже неприемлемое решение, его может сделать каждый. - person Bram Vandenbussche; 09.12.2015
comment
Было бы неплохо получить более четкое сообщение об ошибке, но для JetBrains справедливо требовать обновления - мы не можем ожидать, что они будут поддерживать все будущие версии NUnit в старых версиях ReSharper на неопределенный срок. - person Evan M; 14.12.2015
comment
Хуже всего то, что он действительно работал в VS2013 с Resharper 8 и НЕ работает в VS2015 с Resharper 9 ... - person Alexander Pacha; 15.02.2016

Как упоминалось в принятом ответе, ReSharper 9 не поддерживает NUnit 3. Заявленное решение действительно работает (т.е. обновление до ReSharper 10), однако для тех, у кого нет этой опции (например, лицензирования), вы можете понизить свою версию NUnit, выполнив следующие шаги:

  1. Откройте консоль диспетчера пакетов Nuget, выбрав Инструменты -> Диспетчер пакетов Nuget -> Консоль диспетчера пакетов.
  2. В появившейся консоли (обычно внизу) в раскрывающемся списке «Проект по умолчанию:» выберите тестовый проект, для которого вы хотите перейти на более раннюю версию.
  3. Выполните следующие команды Uninstall-Package NUnit, а затем Install-Package NUnit -Version 2.6.4

Теперь ваши тесты должны выполняться с использованием ReSharper 9.

person Stephen    schedule 13.03.2016

Как упоминалось в другом ответе, реальное исправление заключается в обновлении до ReSharper 10. Но если вы не можете этого сделать, вы можете отключить функцию модульного тестирования ReSharper 9 и вернуться к встроенному в Visual Studio обозревателю тестов.

Сделать это:

  1. Выберите пункт меню ReSharper> Параметры ..., перейдите на панель модульного тестирования и снимите флажок «Включить модульное тестирование».
  2. Перезапустите Visual Studio.
  3. Используйте пункт меню «Тест»> «Windows»> «Обозреватель тестов», чтобы открыть обозреватель тестов Visual Studio.
person Kristopher Johnson    schedule 25.02.2016
comment
это сработало, за исключением того, что в проводнике тестов не было тестов, вместо этого я щелкнул правой кнопкой мыши проект и выбрал запуск всех модульных тестов (у меня VS2015 и реш 10) - person Omu; 16.05.2016
comment
Убедитесь, что вы установили расширение NUnitTestAdaptor в Visual Studio, поскольку по умолчанию VS отображает только модульные тесты MSTest. - person oatsoda; 13.09.2016

Что сработало для меня (VS 2015):

1) установлен NUnit Test Adapter 3.2

2) открыл Test Explorer: VS -> меню Test -> Windows -> Test Explorer

3) запустил тест: в окне «Обозреватель тестов» (если нет теста, перестройте решение) выберите тест для запуска, щелкните правой кнопкой мыши и «Запустить выбранные тесты»

вуаля, я вижу тест в окне обозревателя тестов, выбираю его и отлаживаю.

person Riga    schedule 11.08.2016
comment
В моем случае Visual Studio отключила тестовый адаптер NUnit (3.7), и я не мог повторно включить его (я перезапустил VS, как было предложено, но это не сработало), поэтому мне пришлось удалить расширение, перезапустить VS и переустановить расширение и снова перезапустите VS, тогда все заработало. - person Chaim Eliyah; 10.04.2017

На экране ReSharper v10 Параметры в разделе Tools | Unit Testing | NUnit есть параметр для When to use NUnit 3 test runner. Установка этого параметра на Always решила проблему для меня. Сообщение об ошибке, показанное выше, больше не появляется после внесения этого изменения.

Невозможно запустить модульные тесты NUnit с помощью средства выполнения тестов ReSharper < / а>

person Ghosthack    schedule 02.01.2017