Ответ 1
Ответ ниже относится только к .NET Core/Standard. Если вам не хватает опции Создать модульные тесты для полного проекта .NET Framework, смотрите здесь.
Текущий статус: скоро будет .NET Core
Параметр контекстного меню "Создать модульные тесты" не поддерживается (пока) для проектов, нацеленных на .NET Core и .NET Standard.
Документация была обновлена, чтобы отразить это в июле 2018 года, и теперь говорится:
Команда меню Создать модульные тесты:
- Доступен в версиях Visual Studio 2015 и более поздних версиях для сообщества, профессиональных и корпоративных версий.
- Поддерживает только код С#, предназначенный для .NET Framework.
- Является расширяемым и поддерживает отправку тестов в форматах MSTest, MSTest V2, NUnit, xUnit.
- Пока недоступно в .NET Core проектах.
Эта функция была запланирована для выпуска в версии 15.9 Visual Studio, но теперь, похоже, была перенесена обратно в версию 16.1.
Я протестировал это в проекте .NET Core 2.2 в Visual Studio Professional 2019 RC (версия 16.0.0), и я могу подтвердить, что он все еще там не работает - как и ожидалось согласно ответу выше.
Я также только что протестировал Visual Studio Professional 2019 Preview (версия 16.1.0 Preview 2.0), и он там также недоступен, так что, похоже, Microsoft еще не дошла до этого.
Смотрите обновления ниже для получения дополнительной истории и деталей.
история
Оригинальный ответ июнь 2017
Эта запись GitHub от Microsoft Jayarani Garg подтвердила, что она доступна только для проектов, нацеленных на полную платформу .NET:
Джаяни Гарг [MSFT] · 27 февраля 2017 в 06:09 Привет,
Спасибо за ваш отзыв. "Создать unit тест" в настоящее время не поддерживается для проектов .Net Core.
Это по замыслу, а не по ошибке в соответствии с комментарием команды Visual Studio на той же странице сообщества разработчиков Visual Studio:
Команда Visual Studio ♦♦ · 10 марта 2017 в 13:06
Спасибо за ваш отзыв! Команда Visual Studio определила, что эта проблема не является ошибкой. Однако мы рассмотрим этот отзыв и создали https://github.com/Microsoft/vstest/issues/592 для отслеживания этого. Пожалуйста, не стесняйтесь голосовать за проблему.
Проблема github, упомянутая выше в Microsoft VS Test repo. Отсутствует контекстное меню Create Unit Test (основные проекты .net), немного сбивает с толку. Она просила добавить эту функцию и для проектов .NET Core, но затем сотрудники Microsoft говорят о том, чтобы решить проблему. Я полагаю, что сотрудник ссылается на старую ошибку, когда опция контекстного меню не работала для полных проектов .NET Framework, как обсуждалось в этом вопросе, который также упоминается в этой теме. Насколько я вижу, этот поток не говорит, что они добавили пункт меню для проектов .NET Core.
Я также только что проверил копию Visual Studio Professional 2017, версия 15.2 (26430.6), и у меня есть опция Создать модульные тесты для проекта, который нацелен на полную платформу .NET (эта нацелена на .NET Framework 4.5.1):
Но у меня его нет для проекта, нацеленного на .NETCoreApp 1.1:
Обновление июнь 2018
Microsoft приняла к сведению положительные отзывы о запросе функциональности и планирует представить опцию контекстного меню для проектов .NET Core в выпуске 15.8:
Маниш Джаясвал [MSFT] отвечает Даниэлю Тиби · 06 апреля 2018 года в 22:30
Добавление этой функциональности в проекты .NET Core требует значительных изменений в новой системе проектов, которая управляет проектами .NET Core. Эта работа отслеживается в репозитории системы GitHub проекта в этом выпуске (https://github.com/dotnet/project-system/issues/3425). Ожидается, что эта проблема будет решена в сроки до версии 15.8, поэтому, к сожалению, создание функциональности модульного тестирования для проектов .NET Core не будет доступно в следующей версии 15.7. Мы полностью понимаем, что это ключевая функция, и сделаем все возможное, чтобы сделать ее доступной как можно раньше.
Обновление июль 2018
Заглушки метода создания модульного теста с командной страницей Создать модульные тесты были обновлены, чтобы отразить, что это не работает для .NET Core.
Обновление августа 2018
Как указывает @gartenriese ниже, выпуск GitHub 3425, который Microsoft описал как отслеживающий эту работу, был перенесен на 15,9 веха 2 августа 2018 года.
Обновление января 2019
Функция модульного тестирования, кажется, зависит или блокируется другой частью разработки. Эта часть теперь предназначена для VS 16.1, то есть VS 2019, и также находится в списке приоритетов ниже, чем EF Core 3.0 (который является одной из основных функций VS 16), согласно этому сообщению GitHub от Microsoft Дэвида Кина.