Ответ 1
Мне пришлось добавить следующие пакеты Nuget:
MSTest.TestAdapter
MSTest.TestFramework
Microsoft.NET.Test.Sdk
Когда я обновил Visual Studio до последней версии, один из моих тестовых проектов прекратил выполнение тестов и вывел это сообщение:
Тестовый проект {} не ссылается ни на один адаптер .NET NuGet. Обнаружение или выполнение теста может не работать для этого проекта. Рекомендуется ссылаться на тестовые адаптеры NuGet в каждом тестовом проекте в решении.
ОБНОВЛЕНО: я использовал MS Test в отличие от любых других тестовых сред, таких как Nunit или Xunit.
Мне пришлось добавить следующие пакеты Nuget:
MSTest.TestAdapter
MSTest.TestFramework
Microsoft.NET.Test.Sdk
Хорошо, вы можете добавить пакеты Nuget по запросу. Но вы также можете отключить следующий параметр (Tools-> Options-> Test): "Для повышения производительности используйте только тестовые адаптеры в папке тестовой сборки или как указано в файле runsettings".
Дайте мне знать, если это сработает для вас.
У меня была такая же проблема, и ни один из ответов выше не работал. Установка NUnit3TestAdapter V3.10.0
исправила его.
Если вы используете MS Test, попробуйте установить
MSTest.TestAdapter
через MSTest.TestAdapter
или
если вы используете nunit, установите
NUnit3TestAdapter
последние версии через nuget.
После установки перезапустите Visual Studio, и вы увидите, что тесты запущены.
Недавно у меня была очень похожая проблема с xUnit, тем же результатом, однако мое исправление было связано с тем, что ранее с более низкими версиями Microsoft.NET.Test.Sdk вам не понадобился явно установленный XUnit.Runner.VisualStudio.
Когда я обновил свой Microsoft.NET.Test.Sdk до версии 15.9.0, он прекратил выполнение тестов до тех пор, пока не установил XUnit.Runner.VisualStudio Nuget.
Теперь это может показаться явно очевидным, но раньше он справлялся бы без него и все еще работал. Теперь это не так. То же самое можно сказать и о других тестовых платформах. Это сработало для меня.
Моя оценка репутации в настоящее время не позволяет мне добавлять это как комментарий к принятому ответу. Для справки, я добавил номера версий к пакетам nuget, на которые ссылается ответ csharpsql:
MSTest.TestAdapter v1.3.2
MSTest.TestFramework v1.3.2
Microsoft.NET.Test.Sdk v15.9.0
Для меня я чувствовал себя очень глупо, проведя часы, пытаясь ВСЕ, только чтобы обнаружить, что я просто забыл добавить директиву [TestMethod] в метод модульного теста.
Так как это всего лишь флажок, я попытался отключить следующий параметр, прежде чем что-либо еще, и это сработало!
Сервис → Параметры → Тест → "Для повышения производительности используйте тестовые адаптеры только в папке с тестовой сборкой или как указано в файле настроек выполнения"
Я знаю, что это глупо, но для меня ничего из предыдущих ответов не сработало. После этого я просто перезагружаю свой компьютер, и все работает правильно :) (Моя проблема заключалась в том, что однажды все работало правильно, а на следующий день перестало работать)
Добавление пакетов NuGet не работает для меня.
Отключите следующую настройку (Tools-> Параметры-> Тест): "Для повышения производительности используются только тестовые адаптеры в папке тестовой сборки или как указано в файле runsettings".
Сервис → Параметры → Тест → "Для повышения производительности используйте тестовые адаптеры только в папке с тестовой сборкой или как указано в файле настроек выполнения"
Это сработало для меня!