2010-09-09 2 views
2

Я отлаживаю набор служб WCF. Первоначально я создал несколько модульных тестов, но поскольку я использую потоки, я часто получаю тесты «Прерванные» или «Остановленные» без каких-либо ясных объяснений, почему (это известная ошибка в Visual Studio).Должен ли я сначала писать модульные тесты в качестве консольных приложений?

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

Так что мне интересно, стоит ли сначала писать единичные тесты как (полностью автоматизированные) консольные приложения и преобразовывать их в реальные (выполняется при запуске модульных тестов в VS).

+0

Что когда-либо работает (правильно), а просто достаточно хорош для меня :) – leppie

+2

Ahh, ваш, вероятно, с помощью MS Test ... маленький совет Nunit !! ! – Zoidberg

+0

Я собираюсь 2-го @ Zoidberg на этом - у меня всегда создалось впечатление, что тесты NUnit были такими же простыми, если не проще, чем консольными приложениями. При поточной передаче включите некоторый код, чтобы подождать, пока все нити не погибнут в срыве – kelloti

ответ

1

, если вы хотите, чтобы придерживаться автономного консольного приложения вы можете иметь один подходит всем ПОДХОД: Изменить

  • типа применения MsUnitTest (или NUnitTest) в «Консоли приложение»
  • добавить public static void Main(), что называют ваши UnitTests вы заинтересованы.

Это ех это может работать самостоятельно или он работает в UnitTest-язе.

Я предпочитаю автономный consolerunner, как описано в how-do-i-use-mstest-without-visual-studio

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