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

Visual Studio 2013 MSTest vs NUnit

Моя компания обновляет нашу Visual Studio 2012 до 2013 Premium. В разгар этого мы также хотим начать автоматизацию наших тестов с помощью служб Visual Studio Team.

В прошлом я прочитал несколько сообщений MSTest vs nUnit и статей, но большинство из них сравнивает старую версию MSTest. Кроме того, у nUnit было много положительных отзывов по сравнению с MSTest.

Мой вопрос: учитывая приверженность Microsoft к ALM, Agile-практикам и всем новым материалам, которые они добавили в VS2013 Premium и Visual Studio Team Services для облегчения и поощрения автоматизированного тестирования, как MSTest сравнивается с nUnit?

Какие еще соображения следует принять, прежде чем принимать решение о структуре тестирования?

4b9b3361

Ответ 1

MSTest не сильно изменился с тех пор, как он был изначально введен, поэтому старые сообщения сравнения все еще действительны. Акцент Microsoft на ALM в основном нацелен на дальнейшие инструменты и серверные продукты, но фундаментальная основа тестирования сильно не изменилась.

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

В то время как NUnit лучше, я бы тоже не рекомендовал его. Это тоже не изменилось много лет, и модель расширяемости откровенно беспорядок.

Вместо этого я бы рекомендовал xUnit.net. Хотя это и не идеально, в настоящее время это лучшая альтернатива для .NET. Существует много причин, по которым xUnit.net лучше, чем MSTest.

Ответ 2

MSTest Vs NUnit:

  • MSTest интегрирован с VS, поэтому он будет прост в использовании. NUnit потребует сторонних инструментов (некоторые из них бесплатны, некоторые платят).
  • VS предоставит вам покрытие кода в MSTest. NUnit требует DotCover (который является платным инструментом).
  • MSTest имеет возможность параллельно выполнять ваши тесты, если они не зависят друг от друга. Это не функция, которую предоставляет NUnit.
  • NUNit имеет TestCaseSourceAttribute, который поможет вам получить параметризованные тестовые примеры, но в MSTest вам понадобится DataSourceAttribute, который будет в XML файле, и будет сложно управлять, когда у вас сложная логика в методе.
  • NUnit быстрее по сравнению с MSTest.

В целом обе структуры хороши в использовании, но я предлагаю пойти на NUnit.