Тесты TFS не соответствуют настройкам каркаса
Я пытаюсь переместить решение с TFS 2012 на TFS 2018 SP2RC2, но я не могу правильно выполнить модульные тесты. Все проекты были перенаправлены на 4.7.1 и построены как платформа x86. У нас есть файл testettings, который не содержит ничего, кроме элементов развертывания. Я использую новую задачу VSTest Platform Installer (по указанию MS) и задачу тестирования VS. В начале тестового запуска я получаю следующее сообщение:
Test run will use DLL(s) built for framework .NETFramework,Version=v4.5 and platform X86. Following DLL(s) do not match framework/platform settings.
Таким образом, все тесты пропущены, поскольку они нацелены на 4.7.1. Откуда берутся эти настройки? Я не могу найти его нигде и не могу понять, как его изменить.
Ответы
Ответ 1
Существует параметр /Framework:
, который вы можете указать для VSTest.
В вашем случае вы должны указать /Framework:.NETFramework,Version=v4.7.1
Смотрите больше на https://msdn.microsoft.com/en-us/library/jj155796.aspx?f=255&mspperror=-2147217396
Ответ 2
У меня были проблемы с запуском тестового проекта, разработанного на другой машине, где не было тестов, которые можно было бы запустить с помощью тестера MSTest. В дополнение к сообщению в вашем вопросе я также получил сообщения:
Убедитесь, что тестовый первооткрыватель и исполнители зарегистрированы и настройки версии платформы и фреймворка соответствуют требованиям, и повторите попытку.
Тест теста завершен: 0 найдено
В моем случае я решил проблему путем выгрузки и обновления файла .csproj, добавив следующий импорт непосредственно под корневым тегом Project
.
<Import Project="..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.props" Condition="Exists('..\packages\MSTest.TestAdapter.1.3.2\build\net45\MSTest.TestAdapter.props')"/>
Надеюсь, что этот ответ поможет вам сэкономить время.
Ответ 3
Я получил эту ошибку при использовании Visual Studio 2019 с NUnit 3.12.0
:
В тестовом прогоне будут использоваться библиотеки DLL, созданные для фреймворка .NETFramework, версия = v4.5 и платформа X86. Следующие библиотеки DLL не сопоставьте настройки фреймворка/платформы. Project.UnitTests.dll построен для Framework 4.5.2 и платформа AnyCPU.
Установил NUnit3TestAdapter 3.13.0
и тогда все заработало. Не нужно было изменять версию Framework или настройки процессора.
Ответ 4
Installed NUnit3TestAdapter 3.13.0
Где вы это нашли? Я вижу 3.12.0 как самую последнюю версию