Подтвердить что ты не робот

Почему все мои результаты теста Visual Studio "Не выполнены",

Когда я запускаю свои модульные тесты в своем проекте, я вижу результат "Не выполнен" для каждого. Я перезагрузил свой компьютер, поэтому я сомневаюсь, что это какая-то проблема с зависанием.

Google ничего не обнаружил. У кого-нибудь есть идеи?

4b9b3361

Ответ 1

Что такое PITA! В IDE отсутствуют ошибки. Чтобы определить ошибку, вы должны сделать это

  • Откройте командную строку Visual Studio
  • Перейдите в каталог, где находится двоичный вывод вашего тестового проекта.
  • Введите mstest/testcontainer:The.Name.Of.Your.Test.Assembly.dll

В нижней части вывода вы увидите следующий текст

Запуск имеет следующие проблемы:

В моем случае это было следующее:

Не удалось запустить тестовый прогон "Peter Morris @PETERMORRIS-PC 2009-02-09 10:00:37": проблема с запуском тестового запуска: расположение файла или каталога "C:\SomePath\SomeProject.Tests\bin\Debug\Rhino.Mocks.dll 'не доверяется.

Теперь, если VS сказал мне об этом в IDE, я мог бы исправить это за несколько минут! Все, что вам нужно сделать, это открыть проводник Windows и найти эту DLL. Щелкните его правой кнопкой мыши и выберите "Свойства". Затем нажмите кнопку "Разблокировать".

Какая полная трата моего времени!

Ответ 2

Не выполняются юнит-тесты

Я обнаружил, что хороший совет никогда не иметь конструктора для класса unit test. Если что-либо в конструкторе когда-либо бросает, тест будет просто объявлен как "не выполнен". Положите инициализацию теста в метод TestInitialize. Исключения, отправленные там, сообщаются IDE.

Заблокированные двоичные файлы

Обычно вам нужно разблокировать файл ZIP, прежде чем извлекать из него двоичные файлы, а затем все двоичные файлы будут разблокированы. Если вы попытаетесь разблокировать сами бинарные файлы, разблокировка не "прилипает".

Ответ 3

Другая причина: "Не удалось запустить тестовый прогон" XXX ". Путь не имеет юридической формы." заключается в том, что учетная запись не загружена профилем.

например. когда вы запускаете mstest.exe с помощью CreateProcessAsUser() и забываете вызвать LoadUserProfile().

Ответ 4

Если вы попытаетесь запустить тестовый прогон от IIS "Не удалось запустить тестовый прогон" XXX ". Путь не имеет юридической формы." может быть если пользователь, который запускает пул приложений , не имеет профиля пользователя. Чтобы решить эту проблему, просто установите Load User Profile в true в дополнительных настройках пула приложений.

см. https://social.msdn.microsoft.com/Forums/vstudio/en-US/7bb32a2d-7d10-4b8e-b743-e5beb1175917/trigger-mstest-from-app-hosted-on-iis?forum=csharpgeneral

и https://blogs.msdn.microsoft.com/vijaysk/2009/03/08/iis-7-tip-3-you-can-now-load-the-user-profile-of-the-application-pool-identity/

для получения дополнительной информации

Ответ 5

Иногда ошибка также может быть " Не удалось запустить тестовый запуск" XXX ". Путь не имеет юридической формы."

Решением может быть изменение шаблона именования TRX в файле .testsettings.

Цитата из http://social.msdn.microsoft.com/Forums/da-DK/vststest/thread/c6efa2ba-1657-41bc-85b1-5a889d111e2f:

Если вы хотите управлять именем этого .trx файла, откройте его Решение Explorer, откройте Local.testsettings в элементах решения, выберите "Общие", изменить схему именования по умолчанию на пользовательскую схему. И затем,

  • Вы можете запустить тест с помощью VS, чтобы получить файл .trx, который вы определили.

  • Если вы хотите получить этот результат в командной строке, вы можете запустить его с помощью /testsettings:Local.Testsettings. Для получения дополнительной информации см. http://msdn.microsoft.com/en-us/library/ms182489.aspx#testsettings.

Ответ 6

Убедитесь, что ваш тестовый класс и методы тестирования общедоступны.

Ответ 7

В моем случае в моем коде была циклическая ссылка. Компиляция сработала, но тесты просто помечены как "Не запускаются".