Тести модулів не виявлені у Visual Studio 2017


213

Я боровся з VS 2017 з моменту встановлення. Тепер, схоже, Unit Tests запускається лише з командного рядка "тест на dotnet".

Мій проект - .NET Core 1.1.1. У мене встановлено SDK та оновлення рамки для 1.1.1.

Я спробував зразок на MSDN ( https://msdn.microsoft.com/en-us/library/ms182532.aspx ), який також не працює точно так само.

Усі пакети NuGet для тестів та основного проекту є поточними. І тестовий, і основний проект будуються без помилок. Тести успішно виконуються з командного рядка.

Хтось отримав тести для запуску у VS 2017, якщо так, як?

Спасибі, Джон


Оновлення - розширення

Ось приклад простого тестового проекту, який не працює на GitHub . Це приклад з xUnit, але я спробував NUnit та візуальну студію, вбудовану в тести MS. Незалежно від того, які тестування або які зміни я вносив, я не можу змусити перевізника VS знайти тести.

Що я пробував

  • Видалення файлів кешу VS тесту DEL %TEMP%\VisualStudioTestExplorerExtensions
  • Перезапуск VS
  • Закриття / відкриття тестового провідника
  • для встановленого xUnit Microsoft.DotNet.InternalAbstractions( див. повідомлення SO )
  • для NUnit переконайтеся, що встановлений адаптер та та сама версія (3), що і пакет NUnit
  • test -> test settings -> default processor architecture встановлено на x86

Питання
Чи може хто-небудь, будь ласка, надати робочий приклад рішення .Net Core 1.1.0 у VS2017 (файли проекту .csproj), де дослідник тесту VS успішно знаходить одиничні тести АБО покажіть мені проблему у наведеному прикладі.


Я дізнався, що VS2017 не встановлює всі необхідні пакети. Коли я спробував перенести MonoGame зі старого ПК на новий зі свіжо встановленими Windows 10 та VS 2017, він почав кидати дивні помилки щодо відсутніх пакетів. Після встановлення VS2015 разом із VS2017 всі проблеми не було. Можливо, спробуйте встановити VS2015 додатково.
Матеуш

2
Спробуйте встановити пакети тестів із інсталятором Visual Studio
Маркіяном Беновським

Я розглядаю, чи правильно встановлені всі змінні середовища VS 2017
Іоанн Пезаніт

1
Для NUnit ви повинні використовувати пакет NuGet для адаптера, і він повинен бути 3,8,0-альфа1 або новішим.
Роб Пруз

2
У моєму випадку це була лише наявність app.configфайлу в моєму тестовому проекті: stackoverflow.com/a/47497668/67824 .
Охад Шнайдер

Відповіді:


189

У моєму випадку виявилося, що мені просто довелося модернізувати свої тестові адаптери та тестові рамки. Зроблено.

Приклад використання диспетчера пакунків NuGet:

введіть тут опис зображення


4
Це мені теж допомогло! Зауважте, що ви можете "Керувати Nuget пакетами" на рівні рішення та робити це для всіх проектів, де це потрібно. Тоді ви можете отримати помилки "неоднозначні посилання" - для цього просто видаліть стару DLL (Microsoft.VisualStudio.QualityTools.UnitTestFramework) із посилань
Prashanth Subramanian

48
Ці речі повинні бути розширеннями Visual Studio, а не NuGet-пакетами.
Джайдер

1
У нас багато старих проектів MSTest, і я не знав, що він перейшов до пакету NuGet. Це вирішило це і для мене, спочатку думав, що це помилка з новими випусками ReSharper, поки я не зрозумів, що VS Test Explorer також не міг виявити мої тести.
Девід Андерсон

1
Я зробив точно так само, як зазначено у цій відповіді. У своєму рішенні VS2017 я додав проект MSTest, додав кілька тестів, але побудова рішення призвела б до: виявлення тесту закінчено: 0 знайдено. Отже, для тестового проекту в менеджері пакетів NuGet (ви також можете це зробити на рівні рішення) я оновив MSTest.TestAdapter і MSTest.TestFramework від v1.1.18 до v1.2.0. Потім, після складання, мої тести тепер з’являються в Test Explorer.
Кершо

1
Для мене чудово працювало, мені довелося зайти в диспетчер пакунків для власних пакетів у VS2017 для конкретного тестового проекту та просто оновив різні пакунки, які мені сподобалися, нуніти тощо, потім скласти> відновити і все гаразд.
Тахір Халід

126

Це просто працювало для мене (не знаю, чи це результат зміни робочих просторів, які щось пошкодили):

Видалення файлів кеш-файлу VS у% TEMP% \ VisualStudioTestExplorerExtensions та перезапуск VS2017.


4
Це спрацювало один раз, а не згодом. Що (цього разу) для мене виправило це видалення папки TestResults та bin / obj (разом з цим очищенням тимчасової каталоги)
icesar

24
Хто цікавиться, куди %TEMP%- принесіть командне вікно та введітьecho %TEMP%
mike123

21
Папка не існує в темп: /
Дуглас Гаскелл

так у чому причина такої поведінки?
Михайло Сенютович

1
Найпростіший спосіб доступу% TEMP%, щоб виграти + R і введіть% TEMP%
PontiusTheBarbarian

58

API для тестових адаптерів для .NET Core змінився з виходом Visual Studio 2017 і переходом від project.jsonформату до csprojформату. Це зробило існуючі dotnet-test-*адаптери схожими на dotnet-test-nunitзастарілі.

Адаптери оновлено, але спосіб налаштування та запуску тестів у Visual Studio або в командному рядку dotnet testвимагає різних посилань у ваших тестових проектах. Остерігайтеся будь-якої документації, яку ви знайдете, що довідкові пакети у dotnet-test-*форматі, оскільки вони застаріли.

По-перше, ваш тестовий проект повинен орієнтуватися на конкретну платформу, будь то .NET Core або .NET Framework. Він не може орієнтуватися на .NET Standard, навіть якщо код, який ви тестуєте, є .NET Standard. Це відбувається тому, що мета тестів вказує, на якій платформі для запуску тестів. .NET Standard - це як PCL (бібліотека портативних класів), тому що він може працювати на багатьох платформах.

Далі вам потрібно додати посилання на Microsoft.NET.Test.Sdkобраний вами тестовий фреймворк та сумісний тестовий адаптер. Для NUnit ваші посилання будуть виглядати приблизно так,

<itemgroup>
    <packagereference Include="Microsoft.NET.Test.Sdk" Version="15.0.0"></packagereference>
    <packagereference Include="NUnit" Version="3.7.1"></packagereference>
    <packagereference Include="NUnit3TestAdapter" Version="3.8.0"></packagereference>
</itemgroup>

У коментарі вище згадується додавання,

<ItemGroup>
    <Service Include="{82a7f48d-3b50-4b1e-b82e-3ada8210c358}" />
</ItemGroup>

Це не обов'язково, але може допомогти. Він додається автоматично до всіх тестових проектів підрозділу Visual Studio, щоб допомогти швидко знайти проекти з тестами.

Якщо ваші тести не з’являються у Visual Studio, перше, що потрібно спробувати, це закрити рішення та повторно відкрити їх. Схоже, помилки в Visual Studio не виявляють змін у проектах під час їх редагування.

Для отримання додаткової інформації див. Тестування .NET Core з NUnit у Visual Studio 2017


2
Націлювання на .NET Framework замість .NET Standard працювало на мене. Дякую.
Бен Грісволд

7
Ця посилання Microsoft.NET.Test.SDK відсутня в моєму проекті, і ніде не було вказівки на те, що на це покладається щось, що відображається. Додав його через нульову консоль і все почало працювати. Дякуємо за довідковий список!
GWhite

Мені довелося скопіювати цю папку з колеги до мого тимчасового каталогу та перезапустити VS:% TEMP% \ VisualStudioTestExplorerExtensions \ MSTest.TestAdapter.1.1.18
Heiner

Як я можу протестувати проект netstandard 2.0, якщо змінити цільову рамку? Я більше не можу компілювати, тому що проект netstandard2.0 не може бути посилається проектом, який позначає net46
Jerome2606

1
Це працювало для мене. Дякуємо за детальне рішення.
Талха Ашфаке

42

У мене був той самий випуск, і він змусив його працювати, виконуючи наступні дії:

  • Спочатку закрийте всі відкриті екземпляри Visual Studio і видаліть цю папку:% TEMP% \ VisualStudioTestExplorerExtensions. ( Запуск тестів з Visual Studio )
  • Перейдіть у свій менеджер пакунків Nuget та спочатку встановіть Microsoft.NET.Test.Sdk (15.3.0-превью-20170425-07), а потім встановіть xunit.runner.visualstudio (2.3.0-beta1-build1309). Дивіться доданий скріншот Nuget, щоб побачити всі пакунки, які мені довелося встановити, щоб отримати останню версію VS 2017 для виявлення моїх тестів.Нуджет екрана

35
Видалення % Temp% \ VisualStudioTestExplorerExtensions мені було достатньо.
Хуан Пабло Гомес

Дріжджі. Просто вилучивши це та перезапустивши VS, виправили це.
Хуан Карлос

Хтось знає, що спричиняє це в першу чергу? У мене це було два рази, але видалення цієї папки та перезапуск VS працювали. Це просто дивно.
RubyHaus

@PmanAce - я насправді. Я використовую два різні екземпляри TFS (по одному на проект), тому робоча область змінюється автоматично при переключенні проектів.
RubyHaus

видалення папки та додавання нюгету, Microsoft.NET.Test.Sdkздавалося, працює для мене .. дякую StackOverflow. (Рішення NET Framework WebApi 2)
bkwdesign

40

Забувши зробити тест класу громадськості Запобігти'S методи випробувань всередині , щоб бути виявленими

У мене був проект xUnit за замовчуванням і видалили зразок UnitTest1.cs, замінивши його тестовим класом контролера, з парою тестів, але жодного не знайдено

Коротка історія, після оновлення пакетів xUnit, Test.Sdk, xUnit.runner та відновлення проекту я зіткнувся з помилкою збирання:

Помилка xUnit1000 Тестові класи повинні бути загальнодоступними

На щастя, оновлена ​​версія кинула цей виняток, щоб позбавити мене певних проблем

Змінення тестового класу на загальнодоступне вирішило мою проблему


6
не впевнений, чому проголосував "проти", але перед моєю ранковою кавою на 100% це мене не помітили.
Андрій

1
Спробував усі інші відповіді на це питання / проблему, і це остаточно спрацювало!
FastTrack

3
Цей неймовірно незбагненний, але .. що завгодно. Цікавим є те, що якщо ви створите тестовий набір у VS2017, він не буде генерувати publicклас, а просто клас, тому він не виявить його, поки ви не додасте publicідентифікатор.
briosheje

звичайно. моя погана - mstest повинна мати цю особливість.
Крізмограма

10

У моєму випадку я націлюю тестовий проект на « x64Архітектура» та параметр тестування «Архітектура» (тест-> Архітектура процесора за замовчуванням) було змінено на « x86. Вони не відповідали.

Після повернення тестових налаштувань Архітектура x64та відновлення всіх тестів були виявлені знову.


у vs2017 налаштування в меню Тест -> Налаштування тестування -> Архітектура процесора за замовчуванням
IcyBrk

8

У мене були проблеми з VS 2017, знаходячи свій UnitTest. Іван не задався точною проблемою - але це було першим результатом пошуку в Google, тому я хотів поділитися своєю проблемою.

У мене було застаріле рішення, яке поверталося з VS2010 і переходило на VS2013, VS2015. Зараз у VS2017, схоже, простори імен для [TestMethod]атрибутів змінилися.

До того, як це використовували

Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.0.0.0

Я створив новий тест.dll в проекті і той, який використовується за замовчуванням

Microsoft.VisualStudio.TestPlatform.TestFramework, Version=14.0.0.0

Тож моїм рішенням було створити новий проект UnitTest з VS2017. Можливо, зміна посилань на збірку для старого тестового проекту також спрацювала б. З новою посиланням VS2017 виявив ці модульні тести.


На жаль, навіть новий тестовий проект не має для нього тестового шоу: /
Дуглас Гаскелл

7

Не читайте застарілі статті під MSDN. Відповідні матеріали .NET Core розміщені під docs.microsoft.com

https://docs.microsoft.com/en-us/dotnet/articles/core/testing/

Взагалі кажучи, вам потрібна консольна програма .NET Core, щоб містити тестові приклади пристрою.


Велике спасибі, Лекс. Якщо ця стаття правильна, єдиний спосіб перевірити .NET Core - це командний рядок - таким чином втрачається вся VS інтеграція, яку ми мали при запущених тестах у VS 2015. Чи я в цьому правильно?
Іоанн Пезаніт

Ви використовуєте xUnit.net або MSTest?
Лекс Лі

@JohnPezzanite, ви повинні показати більше, що ви робили (можливо, репортаж GitHub, якщо це можливо). У GitHub у мене є проекти, які працюють бездоганно, і багато інших також.
Лекс Лі

Дотримуйтесь прикладу в рядку, який я постачав. Я спробував це з .NET стандартом і .NET Core, з одиничними тестами Microsoft, як у прикладі та з xUnit. Стандарт .NET інтегрується з VS 2017, тоді як .NET Core запускається лише з командного рядка. Але я повторюю те, що я говорив вище. Схоже, Microsoft видалила форму інтеграції тесту .NET Core unit VS 2017.
John Pezzanite

@JohnPezzanite test GitHub.com/lextm/sharpsnmplib та його рішення NetStandard.
Лекс Лі

6

для мене питання, чи я помилково розмістив тестові вікна у внутрішньому класі

[TestClass]
  internal class TestLib {
}

що спричинило невстановлення тестових вікон.


5

Будьте впевнені, що ви використовуєте правильний Microsoft.NET.Test.Sdk:

<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.0.0" />

Не використовуйте попередній випуск. Або вам доведеться змінити консольний додаток (а не бібліотеку). У мене є аналогічна проблема, але з останньою версією (15.0.0) вона знову починає працювати.

Також вам може знадобитися додати:

  <ItemGroup>
    <Service Include="{82a7f48d-3b50-4b1e-b82e-3ada8210c358}" />
  </ItemGroup>

але я не думаю, що це зайве.


У якому файлі знаходиться цей файл? Я можу знайти у своєму проекті (* .csproj) частину "Включити сервіс", але не PackageReference.
Кріс Беннет

@ChrisBennet у вашому * test.csproj файлі.
Євген Набоков

1
@ evgeni-nabokov має рацію. Усі ці зміни містяться у файлі [project] .test.csproj. Клацніть правою кнопкою миші на проекті в розчині і виберіть «Edit [проект] .test.csproj» Дивіться приклад на: github.com/RenetConsulting/angularcore.net/blob/master/Business / ...
Alex Altotsky

5

Я знаю, що ОП вказала це у своєму контрольному списку, але легко не помітити цю точку, роблячи чисту установку Visual Studio 2017 та налаштовуючи новий проект. Крім шаблону проекту NUnit та NUnit Framework потрібно окремо встановити адаптер NUnit, наприклад, використовуючи команду NuGet Install-Package NUnit3TestAdapter -Version 3.9.0. Після цього Visual Studio Community 2017 почав розкривати тести одиниць без будь-яких проблем.


1
Це мені допомогло!
Івр

OMG, цей зробив це для мене. Якби я міг намастити тебе щедротами, я б.
Еш

Це було єдине рішення, яке працювало для мене, дякую!
Вадим Тофан

5

У моєму випадку Test Explorer не зміг знайти мої тести після того, як я перемістив проект на нове рішення.

Відповідь була просто у тому, що я мав посилання на старий MS Test Adapter у своєму проекті.

Я мав дублікат рядка нижче для версії 1.1.11 тестового адаптера MS у своєму файлі cs.proj:

<Import Project="..\packages\MSTest.TestAdapter.1.1.18\build\net45\MSTest.TestAdapter.props" Condition="Exists('..\packages\MSTest.TestAdapter.1.1.18\build\net45\MSTest.TestAdapter.props')" />

Щоб вирішити проблему,

  1. Клацніть правою кнопкою миші на проект та виберіть «Вивантажити проект».
  2. Клацніть правою кнопкою миші проект та виберіть "Редагувати"
  3. Видаліть рядок, який імпортує стару версію адаптера.
  4. Клацніть правою кнопкою миші на проект і виберіть «Перезавантажити проект».
  5. Відновіть рішення / проект

Мав те саме питання. Видалення та відновлення рішення не спрацювало. Відкрито VS та тести були виявлені!
Майк Уорд

4

Якраз була така проблема, оскільки візуальна студія не змогла знайти мої тести, не побачила кнопки, щоб запустити їх, крім методу, і вони не були зібрані, виконавши всі тести в проекті.

Виявляється, мій тестовий клас був не загальнодоступним! Оприлюднення це дозволило VS виявити тести.


2

Для мене було простіше створити новий тестовий проект, який ідеально працює з Visual Studio 2017 ... і просто скопіювати тестові файли, додати посилання та пакунки NuGet за потребою.

введіть тут опис зображення


створення нового проекту, ймовірно, врятувало години головного болю!
М.казем Ахгарі

2

У моєму випадку це був проект, який я модернізував тестовий проект з більш ранньої версії .Net. у app.config у мене були прив'язки до збірок до попередніх версій залежних зборів.

Після виправлення зв'язкових зв'язків у app.config мої тести були виявлені.


2

Відкриття

Наведені вище відповіді не працювали для мене (перезапуск, оновлення до версії 1.1.18 ... Я вже був оновлений, видалення тимчасових файлів, очищення кешу NuGet тощо).

Я виявив, що в різних тестових проектах я мав різні посилання на MSTest.TestAdapter і MSTest.Framework (у моєму рішенні два). Один був вказаний на 1.1.18, як ...

пакети.конфіг

<package id="MSTest.TestAdapter" version="1.1.18" targetFramework="net461" />
<package id="MSTest.TestFramework" version="1.1.18" targetFramework="net461" />

... але інший має посилання на 1.1.11. Деякі відповіді вище призводять до цього відкриття, коли дві версії бібліотек з’явились у моєму темп-каталозі (% TEMP% \ VisualStudioTestExplorerExtensions \) після перезапуску Visual Studio.

Рішення

Просто відновлення моїх пакунків.config до версії 1.1.18 відновило функціональність моїх модульних тестів у VS. Здається, є деякі помилки, які не дозволяють побічних посилань на бібліотеки MSTest. Сподіваюся, це вам допоможе.

Більше інформації:

  • Visual Studio 2017 Ent: 15.5.6 (я оновлювався з 15.0.1 з надією виправити цю проблему, але я мав її в обох)

2

Рішення було видалити мій app.configфайл із мого тестового проекту. Тести знову з’являться!

Цей файл посилався на деякі DLL-файли в обов'язкових напрямках, які насправді не були в посиланнях на проект. Повторно додайте вкладиші, які строго необхідні для вашого проекту.


1

У моєму випадку саме проект UWP був присутнім у вирішенні проблеми.

Коли я розвантажив проект UWP, були виявлені тести. Коли я його завантажую назад, тест знову зникає.

Спробуйте розвантажити всі проекти та тримати лише тестовий проект. У програмі Test Runner з'являються десять розчинів для відновлення та тестовий шум. Завантажуйте проекти по черзі та щоразу відновлюйте рішення, щоб з’ясувати, який проект викликає проблему

зразок репо

Звіт про помилку VS


Вдячний за відповідь, але це не моє питання. Якщо ви подивитесь на приклад репо, до якого я пов'язаний у своєму питанні, у вирішенні є лише один проект. Немає інших проектів для видалення. Це рішення є тестом, хоча я спробував те, що ви сказали, розвантажуючи проекти на моєму фактичному рішенні, але це не спрацювало.
rayepps

1

Питання

Проблема полягає в тому, що Visual Studio стає «плутаниною» над основними версіями dotnet на машині. Коли я перейшов до панелі управління -> програми для видалення, у мене було встановлено 8 різних SDK і Runtimes. Це якимось чином змушувало VS мовчки мати помилку при спробі знайти тести.

Обґрунтуйте випуск

Ви можете перевірити проблему, перейшовши в командний рядок і отримавши свою версію dotnet $ dotnet --version. Якщо ви бачите що-небудь, крім останньої встановленої вами версії, то ваша машина має певну невідповідність і не використовує правильну версію. Приклад ... Якщо у вас встановлено ядро ​​dotnet, 1.0.1але коли ви отримуєте версію в командному рядку, вона говорить1.0.0 про те, що проблема.

Рішення

Видаліть усі старі речі. Я почав лише з того, що мені потрібно було видалити (найдавніші версії dotnet rc), але він все ще дав неправильну версію при тестуванні проблеми. Врешті-решт я поступився чистим способом. Я ...

  • Видалено всі програми візуальної студії (на моїй машині VS2015 та VS2017)
  • Видалено всі версії ядра dotnet (навіть найсвіжіші)

Після того, як моя машина була повністю порожня від усіх VS та донетів, я встановив лише VS2017 (він постачається в комплекті з останньою dotnet). Я створив тестовий проект xUnit, і тест-дослідник знайшов тест негайно РІШЕНО

Це може здатися непосильним, але я провів два тижні, намагаючись виправити це іншими способами. Якщо у вас виникли проблеми, просто виконайте це, хоча для видалення / перевстановлення елементів може знадобитися кілька годин, можливо, це заощадить ваш час.

Список літератури


1

Я спробував все, але нічого не допомогло. У моєму випадку я мав рішення з декількома тестовими проектами, і деякі з них використовували стару рамку для тестування MS, тому Visual Studio знайшов лише ті.

Я встановив пакети тестових рамок для всіх тестових проектів, як показано у прийнятій відповіді . Потім видалили посилання на старі інструменти якості, перезапустили Visual Studio і тепер я можу побачити всі тести.


1

Для C ++:

Оскільки для тестів на C ++ немає особливого питання, але тема дуже однакова, ось те, що мені допомогло, коли у мене виникли проблеми з виявленням тесту.

Якщо ви встановили лише розробку робочого столу за допомогою C ++ , тоді рішення також встановити розробку універсальної платформи Windows з додатковими інструментами C ++ Universal Windows Platform . Вибрати їх можна в веб-програмі установки візуальної студії.

Після цього відновіть свій тестовий проект, і тестове відкриття має працювати.

До речі, я створив блок тестового проекту у VS2017. Це може бути важливо, оскільки деякі користувачі згадували, що у них були проблеми з виявленням у проектах, які були перенесені з VS2015 на VS2017.


1

Видалення старої .dll має допомогти. Очищення тимчасових файлів, що знаходяться в каталозі% TEMP% за адресою C: \ Користувачі (ім’я вашого користувача) \ AppData \ Local \ Temp


1

У мене було те саме питання. Моє рішення було нормально, але раптом, коли я відкрив рішення, я виявив, що тести пішли.

Нарешті я знизив Microsoft.VisualStudio.TestPlatform.TestFrameworkі Microsoft.VisualStudio.TestPlatform.TestFramework.Extensionsпакунки перейшли до дуже старої версії (за допомогою менеджера NuGet) і з'явилися методи тестування. Потім я перейшов до останньої версії і все ще там був.

Тому просто понижуйте та оновлюйте пакети.


1

У моєму випадку жодне з перерахованих вище мені не допомагає. Але я знижую NUNit3TestAdapter до версії 3.8.0, а потім переходжу до останнього (3.10.0)


1

Іноді зміна простору імен тестів працює. Я мав структуру папки наступним чином:

A |___B | |___D |___C___E

Простір імен був рівним, як тести. <Name>, і вони не відображалися у тестовому вікні. Коли я змінив простір імен на структуру каталогу, показали всі тести. Тепер я міг повернутися до будь-якої іншої структури простору імен, яку я хочу.

Не забудьте побудувати свій проект!


1

Що стосується .NET Framework, в тестовому проекті раніше були посилання на такі DLL:

Microsoft.VisualStudio.TestPlatform.TestFramework
Microsoft.VisualStudio.TestPlatform.TestFramework.Extentions

Я видалив їх і додав посилання на:

Microsoft.VisualStudio.QualityTools.UnitTestFramework

А потім з’явилися всі тести і почали працювати так само, як і раніше.

Я раніше спробував майже всі інші пропозиції, але просто повторно посилався на тестові DLL-файли працювали нормально. Цю відповідь я розмістив для тих, хто в моєму випадку.


1

Я зіткнувся з тим же питанням, в моєму випадку, щоб вирішити

  1. Я відкрив консоль Windows (ключ Windows + cmd).
  2. Перейдіть до папки, в якій був створений проект.
  3. Виконана команда "тест dotnet" - це в основному той самий тест, який виконує візуальна студія, але коли ви запускаєте її через консоль, вона дозволяє побачити повний слід.
  4. Я отримав це повідомлення про помилку "Атрибут TestClass визначений у недержавному класі MSTest.TestController.BaseTest"
  5. Тому я перейшов до тестового випадку і відзначив його як загальнодоступний, будуйте заново і мої тести відображаються правильно

0

Спочатку я намагався використовувати MSTest. Після цього я зміню його на тест Нуніта. Тоді я хотів підтримати MSTest. Я видалив усі коди і посилання nUnit, але Test Explorer не показав методів MSTest. Рішення: я видалив усі найпопулярніші посилання на mstest і перевстановив. Зроблено.


0

Для мене зміна TargetFramework у .csprojфайлі тестового проекту з

  <PropertyGroup>
    <TargetFramework>netcoreapp2.0</TargetFramework>
  </PropertyGroup>

до

  <PropertyGroup>
    <TargetFramework>net46</TargetFramework>
  </PropertyGroup>

працювали.


0

У моєму випадку проблема полягала в тому, що тип проекту був встановлений на статичну бібліотеку (lib), і це повинна бути динамічна бібліотека (dll)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.