NUnit не выполняет код Visual Studio 2010
Я пытаюсь загрузить бета-версию Visual Studio 2010 в графический интерфейс NUnit. Я получаю ошибку всплывающего окна.
Эта сборка создается средой выполнения, более новой, чем текущая загруженная среда, и не может быть загружена. Возможно, вы пытаетесь загрузить сборку сборки с более поздней версией CLR, чем версия, под которой в данный момент работает NUnit.
Как заставить исполняемый файл работать под.NET 4?
10 ответов
Я скачал исходный код NUnit 2.5 и открыл решение VS2008 в бета-версии VS2010. После завершения преобразования я открыл все проекты и изменил настройку целевого фреймворка для всех проектов на ".NET Framework 4.0". Затем я построил решение без каких-либо ошибок. Теперь я могу использовать приложение NUnit GUI для запуска тестов, созданных для.NET 4.0. Я не провел исчерпывающего тестирования этой сборки, поэтому могут возникнуть проблемы, но для моих целей он работает нормально.
Обновление: нет необходимости перестраивать NUnit. Я обнаружил, что если вы добавите следующее в соответствующий файл конфигурации NUnit, вы сможете запустить тестовую dll, созданную для.NET 4.0.
Под <конфигурация> добавьте:
<startup>
<supportedRuntime version="v4.0.30319" />
</startup>
и в
<loadFromRemoteSources enabled="true" />
С выходом.NET 4 я использовал
<supportedRuntime version="v4.0.30319" />
в NUnit 2.5.4 exe.config вместо requiredRuntime и тег loadFromRemoteResources, как показано выше, и все работало хорошо. Спасибо!
Вам не нужно изменять какой-либо файл
просто откройте этот файл, и все будет работать нормально
C:\Program Files (x86)\NUnit 2.5.10\bin\net-2.0\nunit-x86.exe
В NUnit 2.5.5 вы можете указать в командной строке параметр /framework=net-4.0, и он совместим с новыми сборками, созданными с выпуском последней версии VS2010.
Предложенное решение отлично работает для запуска NUnit. К сожалению, когда я добрался до шага покрытия кода, NCover начал давать мне:
Профилированный процесс завершен. Соединение профилировщика не установлено.
Лучшее решение, которое я нашел, это просто использовать версию NUnit "-x86" с NCover:
NCover.Console.exe nunit-console-x86.exe - дополнительные параметры--
Работает сейчас
Чтобы найти свою версию.net 4 из Visual [C# 2010 Express или еще какой-либо], перейдите в раздел "О программе" приложения Visual в пункте "Справка" меню. Он должен отображаться как версия под строкой Microsoft .NET Framework в верхней правой части окна.
Начиная с NUnit 2.5.10, вы можете включить поддержку Visual Studio в GUI Runner:
Сервис-> Настройки-> Поддержка IDE
После этого я смог успешно подключиться к процессу nunit-agent.exe, который запускает вашу сборку в домене приложения.NET 4.0.
Я столкнулся с тем же сообщением об ошибке во время работы NUnit 2.4.8. Поскольку я некоторое время не обновлялся, я установил текущий NUnit (v2.5.9) и обнаружил, что он теперь поддерживает сборки VS2010. Поэтому, если вы недавно столкнулись с этой ошибкой, проверьте свою версию NUnit: с декабря 2010 года (или около того) единственное, что вам нужно сделать, это обновить NUnit.
Если вы столкнулись с этой проблемой после обновления до nunit 2.5.5, вам нужно будет обновить nant до последней версии, для меня это была альфа-версия.91.