2012-03-28 2 views
3

У меня есть два вопроса.MSTest результаты успешно, когда не найдено тестов

Я запускаю TeamCity 6.5, и один из шагов - тесты MSTest. И в случае, если MSTest не может найти тесты, описанные в файле vsmdi, я ожидаю, что тестовый прогон завершится с ошибкой.

[17:47:01]: [Шаг 2/2] Загрузка (путь) \ LocalTestRun.testrunconfig ...

[17:47:01]: [Шаг 2/2] Загрузка (Путь) \ Tests.vsmdi ...

[17:47:01]: [Шаг 2/2] Начиная исполнение ...

[17:47:01]: [Шаг 2/2 ] Тест BlaBla1 не найден.

[17:47:01]: [Шаг 2/2] Тест BlaBla2 не найден.

[17:47:01]: [Шаг 2/2] Тест BlaBla3 не найден.

[17:47:01]: [Шаг 2/2] Нет тестов для выполнения.

[17:47:07]: [Шаг 2/2] Процесс завершился с кодом 0

Я запущенного MSTest из командной строки, и он действительно возвращает ноль, как код завершения, когда он не находит любые тесты. Кто-нибудь знает, как заставить его потерпеть неудачу, когда тесты не найдены?

Вторая проблема больше связана с TeamCity, я думаю. В случае, если MSTest не может найти VSMDI файл, он печатает журнал

[17:59:16]: [Шаг 2/2] Файл "(путь) \ Tests.vsmdi" не найдено.

[17:59:16]: [Шаг 2/2] Для переключения синтаксиса, типа "MSTest/помощь"

[17:59:16]: [Шаг 2/2] Процесс завершился с кодом 1

Эта конфигурация сборки имеет состояние «Неисправность»: «код завершения процесса сборки не равен нулю», тем не менее, этот шаг не завершается. Кто-нибудь знает, как с этим бороться?

ответ

0

Единственный способ, я могу думать о том, чтобы иметь несколько сложное решение. Решение состоит в том, чтобы указать имя файла . Затем следующий шаг после запуска тестов должен состоять в том, чтобы запустить командную строку, которую вы напишете, и проверите файл, чтобы проверить отсутствие тестов на запуск.

1

Есть функция Fail build on metric change в TeamCity 7.0 + . Таким образом, вы можете скомпилировать с использованием настроек пользовательского интерфейса, если в сборке не сообщается о тестах.

Смежные вопросы