Я занимался разработкой TDD с использованием NUnit в течение ряда лет и использую MSTest уже около 4 месяцев из-за смены роли.
Я не думаю, что MSTest мешает кому-либо заниматься TDD. У вас все еще есть все основные вещи, которые вам нужны для TDD, такие как базовые утверждения и фреймворки (я использую Rhino Mocks).
MSTest тесно интегрируется с Visual Studio, лучшим компонентом этой интеграции является встроенный инструмент покрытия кода.
НО
Существует ряд веских причин , а не для использования MSTest. На мой взгляд, есть два самых больших поворота:
- Отсутствие параметров подтверждения (по сравнению с NUnit)
- Вялый тестовый бегун (медленнее, чем NUnit)
Это означает, что для записи утверждений требуется больше кода в сочетании с медленным выполнением теста, что означает, что весь процесс медленнее, чем NUnit.
Опции с открытым исходным кодом также имеют гораздо большую поддержку в сообществе.
Если вы используете TFS для CI, вам нужно будет перепрыгнуть через несколько обручей / хаков, чтобы NUnit опубликовал результаты тестов. Выполнить тесты на TFS с MSTest по сравнению очень просто и прямо.
Если ты не прикасаешься к TFS, я бы все равно не делал, просто лучше.