Resharper 7: MSTest не работает - "Тест не был выполнен"

После обновления до VS2012 и Resharper 7 мои ранее работающие тесты MS больше не выполнялись.

Тесты выполняются в среде ASP.NET. Я использую следующие атрибуты:

    [TestMethod]
    [HostType("ASP.NET")]
    [AspNetDevelopmentServerHost("C:\\Projekte\\****\\Website", "/")]
    [UrlToTest("http://localhost:7924/")]

Есть идеи, как это исправить?

19 ответов

Как бы странно это ни было, при использовании VS2012, при использовании Resharper 8.0, при использовании NUnit я получал эту ошибку из-за записи в моем файле app.config. Я добавил строку подключения EntityFramework, и это поведение началось. Удаление всей строки подключения показывает, что тестовый запуск запускается / работает снова. Просмотр результатов показывает, что app.config недопустим - это вызвало такое специфическое поведение в тестовом средстве - "Тест не был выполнен".

У меня был testproject установлен на AnyCPU, а проект явно установлен на x86, когда это произошло. Установка testproject для x86 решила его для меня.

Я использую VS2012 R#8 и nUnit

Попробуйте запустить модульные тесты с помощью MSTest Test Explorer. Вы можете найти более подробную информацию в окне вывода первопричины.

Для меня это была ссылочная сборка, которая использовала более свежую версию NUnit, чем та, на которую ссылались в тестовом проекте. Использование той же самой современной версии решило проблему.

System.IO.FileLoadException: не удалось загрузить файл или сборку 'nunit.framework, версия =2.6.3.13283, культура = нейтральная, PublicKeyToken=96d09a1eb7f44a77' или одна из ее зависимостей. Определение манифеста обнаруженной сборки не соответствует ссылке на сборку.

Я бы такую ​​же проблему, я просто..

  • Изменен метод доступа к модификатору с приватного на публичный.
  • Удалено статическое ключевое слово из методов.

Вот и все. Это сработало для меня. Но это для C#.

В моем случае это был NUnitTestAdapter nuget, который нужно было удалить.

При использовании VS2010 и ReSharper 9.1 проблема заключалась в том, что файл LocalTestRun.testrunconfig отсутствовал, но был указан в моем .vsmdi файл.

Тест без VS выполнялся правильно, но у меня всегда была ошибка "Тест не был выполнен" в пользовательском интерфейсе теста ReSharper.

Так что я просто восстановил свой старый LocalTestRun.testrunconfig файл и все работает отлично.

Я, вероятно, мог бы обновить мой .vsmdi файл, чтобы не ссылаться на отсутствующий файл... Я не проверял это.

У меня такая же проблема. Не удалось запустить тестировщик Visual Studio, поэтому я попытался отладить тест. Это вызвало исключение ConfigurationErrorsException, которое не имело большой части трассировки стека, но содержало фразу "ClientSettingProvider". Я искал свое решение и обнаружил, что что-то добавило ключ appSetting для "ClientSettingProvider.ServiceUri" в мой app.config. Я удалил это (вместе с пустым элементом connectionStrings) и перестроил все - исправил проблему!

Дважды проверьте ваш app.config и попробуйте удалить все пустые элементы или все, что выглядит подозрительно.

Убедитесь, что для любых ссылок, которые у вас есть в тестовом проекте, задано значение Копировать локальный True.

Это может быть еще одна (глупая) проблема; У меня случайно был проект не строить. Перейдите в "Сборка" /"Диспетчер конфигурации" и убедитесь, что проект настроен на сборку.

Также может быть, что Ваше решение содержит несколько версий, например, nUnit, установленных в разных проектах. В моем случае это было причиной проблем. После объединения версии nUnit в решение проблема исчезла.

Я обнаружил, что файл настроек для модульного теста может нуждаться в проверке того, на что указывает ReSharper. У меня происходило то же самое, и это было связано с моими юнит-тестами для RS Harness, указывающими на неправильный файл.

У меня была та же проблема, потому что в имени тестового класса были символы "<" и ">" (также "(" и ")" вызывали эту проблему).
Удаление этих символов решило проблему.

Я мог использовать символы в идентификаторах благодаря поддержке Unicode в F#.

У меня была такая же проблема в C#: модульные тесты, запускаемые ReSharper, просто остановились с "Test not run". Нет другой информации.

Оказалось, из-за моего пользовательского раздела в App.Config. Удаление этого и это сработало.

Конфигурация: Visual Studio C# 12, ReSharper 8.2.3

У меня была точно такая же проблема, и ничего не помогло.

в конце концов я увидел несоответствие в своих пространствах имен проекта модуля и проекта модульного тестирования.

Пространство имен моего проекта модуля - это unit.project, а тестовый проект получил имя unit.project.tests, но пространство имен по умолчанию для теста было таким же, как и для модуля, оба были unit.project.

Как только я обновил пространства имен, чтобы они были разными (одно пространство имен для каждого проекта), все работало!

У меня была похожая проблема с NUnit тест, который не будет выполнен, но R# пометит их только как "Тест не был выполнен".

Выполнение их с родным NUnit runner обнаружил, что в файле app.config произошла ошибка (собственно, 2 раздела ConnectionString). Исправление также сделало тесты запущенными в R# тестовый бегун.

Я продолжал получать "Test not run" в Resharper.. Я испробовал все рекомендации, но ничего не получалось. Что для меня решило, так это запустить Visual Studio от имени администратора. (VS2013 с Resharper 8.1)

Просто выдержка из MSDN относительно Assert.Inconclusive:

Код, сгенерированный Visual Studio при создании модульных тестов, содержит оператор Inconclusive в качестве заполнителя.

Это происходит, если с решением что-то не так, чаще всего неправильная конфигурация, например, неправильные или несовпадающие пространства имен, несовместимые цели сборки и т. Д., Что приводит к тому, что UnitTestExplorer не может правильно использовать предоставленные модульные тесты. Таким образом, общее решение заключается в проверке последних изменений и исправлении ошибок.

В VS2012 тестовый проект не работает с общими папками, такими как \XXXXXX\XXX. Я решил, что он скопировал тестовый проект на локальные устройства. Удачи

Чтобы добавить к этому, я переписал свой файл app.config с новым, в котором отсутствовали некоторые нужные мне разделы. Я добавил разделы обратно, после чего я получил ту же ошибку в Resharper. Благодаря комментариям выше я сравнил его со старой версией и обнаружил, что мне не хватает имен разделов в configSections.

Другие вопросы по тегам