На прошлой неделе я обновился до Visual Studio 2017. Решение с несколькими тестовыми проектами с использованием MSTest v1, казалось, было в порядке. Большинство тестовых проектов отлично выполняют тесты. Это.NET Framework, а не.NET Core.
Однако есть один проект, в котором я сталкиваюсь с проблемами. Это проект тестирования интеграции, то есть он запускает тесты веб-приложений с помощью ChromeDriver и Selenium. Этот проект ссылается на NUnit, хотя эта ссылка взята из другой ссылки на проект. Я не использую NUnit в качестве тестовой среды.
Это ошибка при попытке выполнить любой тест в этом конкретном тестовом проекте: Could not find test executor with URI 'executor://mstestadapter/v1'. Make sure that the test executor is installed and supports.net runtime version. Test project {name} does not reference any.NET NuGet adapter. Test discovery or execution might not work for this project. It recommended to reference NuGet test adapters in each test project in the solution.
Could not find test executor with URI 'executor://mstestadapter/v1'. Make sure that the test executor is installed and supports.net runtime version. Test project {name} does not reference any.NET NuGet adapter. Test discovery or execution might not work for this project. It recommended to reference NuGet test adapters in each test project in the solution.
Отключение опции, указанной ниже, заставило все работать:
Я нашел это решение после просмотра заметок для предварительного просмотра на https://docs.microsoft.com/en-us/visualstudio/releasenotes/vs2017-preview-relnotes#--visual-studio-2017-version-158-preview-4 (прокрутите вниз до "... What New...", а затем.NET Test Adapter Extension). В нем упоминается это нарушение (хотя оно не нарушало мои другие проекты), но не упоминается, что на самом деле делать, чтобы решить проблему.
Конечно, долгосрочный, если этот опцион не установлен, не представляется возможным. Поэтому я ищу руководство о том, как действовать.
Я уже пытался проверить, могу ли я "быстро" перейти на MSTest v2, но это было проблемой, потому что System.Runtime 4.1.2 не удалось найти. Я попытался добавить System.Runtime 4.3.0 через NuGet, но это не решило проблему.