Сведения о вопросе

Martincow

16:03, 1st July, 2020

Теги

c#   .net   unit-testing   testing    

Пакеты модульного тестирования .NET?

Просмотров: 500   Ответов: 12

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

Я знаком с NUnit (несколько лет назад), и немного поиграл с IronRuby, с целью получить что-то вроде rspec, но не знаю ничего сверх этого.

Я понимаю, что мог бы погуглить для этого и назвать его днем, но я думаю, что, скорее всего, получу лучший и более информированный ответ, задав вопрос здесь :-)

Предложения?



  Сведения об ответе

PHPH

18:03, 1st July, 2020

Их так много, что это просто безумие. Безумно хорошо, я думаю.

  • Для консервативных типов (me) NUnit все еще доступен и все еще более чем способен.
  • Для Microsoft-типов MSTest является адекватным, но медленным и неуклюжим по сравнению с Nunit. Ему также не хватает покрытия кода, не заплатив большие деньги за дорогие версии Visual Studio.
  • А еще есть MbUnit . Это похоже на NUnit, но имеет отличные функции, такие как RowTest (запуск одного и того же теста с разными параметрами) и откат (поместите базу данных обратно, как вы нашли ее после теста)
  • И, наконец, xUnit.net -это модный вариант с некоторым отношением.
  • О, и TestDriven.NET даст вам интеграцию IDE как для Nunit, так и для MBunit.

Я уверена, что все они в полном порядке. Я бы держался подальше от MSTest, хотя, если вы просто не наслаждаетесь удобством иметь все в одном IDE из коробки.

Скотт Хансельман есть подкаст на эту тему.


  Сведения об ответе

lesha

18:03, 1st July, 2020

Придерживайтесь NUnit. Даже близко не подходи к MSTest.

NUnit + ReSharper-это абсолютная радость для работы.


  Сведения об ответе

DO__IT

18:03, 1st July, 2020

Мы используем здесь NUnit и MBUnit . Мы используем TestDriven.NET для запуска модульных тестов из Visual Studio. Мы используем отличный, настоятельно рекомендуемый RhinoMocks в качестве макета фреймворка.


  Сведения об ответе

nYU

18:03, 1st July, 2020

xUnit.net выглядит так, как будто он обеспечивает немного другой подход к N/MB/MS/Unit, что интересно.

В моем поиске rspec-подобного решения (потому что я люблю rspec), я также наткнулся на NSpec , который выглядит немного многословно, но в сочетании с NSpec Extensions addon для использования методов расширения C#3, это выглядит довольно приятно.


  Сведения об ответе

dumai

18:03, 1st July, 2020

Раньше я использовал NUnit, но теперь, как правило, использую MbUnit, для двух ключевых функций: 1. Функция RowTest позволяет легко запускать один и тот же тест на разных наборах параметров, что важно, если вы действительно хотите тщательного покрытия. 2. Функция отката позволяет выполнять тесты для вашей базы данных при откате изменений после каждого теста, сохраняя вашу базу данных в точно таком же состоянии каждый раз. И это так же просто, как добавить атрибут [Rollback].

Еще один приятный аспект MbUnit заключается в том, что его синтаксис почти идентичен NUnit, поэтому, если у вас уже есть целый тестовый стенд под NUnit, вы можете просто переключить ссылки без необходимости каких-либо изменений (очень много?) код.


  Сведения об ответе

SEEYOU

18:03, 1st July, 2020

Я использую следующее:

TestDriven.NET -модульное тестирование дополнения для Visual Studio

Typemock изолятор - насмешливый рамки для блока .Net тестирования

NUnit -платформа модульного тестирования с открытым исходным кодом, которая находится в C#.


  Сведения об ответе

#hash

18:03, 1st July, 2020

Это старый вопрос, но вам может показаться интересным, что Gallio v3.1 теперь поддерживает RSpec через IronRuby.


  Сведения об ответе

DO__IT

18:03, 1st July, 2020

Мне нравится TestDriven.NET (хотя я использую ReSharper), и я очень доволен XUnit.net . Он использует факты вместо тестов, которые многим не нравятся, но мне нравится разница в терминологии. Полезно подумать о коллекции автоматически доказуемых фактов о вашем программном обеспечении и посмотреть, какие из них вы нарушаете, когда вносите изменения.

Имейте в виду, что Visual Studio 2008 Professional (и выше) теперь поставляется с интегрированным модульным тестированием (раньше оно было доступно только с выпусками Team System) и может быть подходящим для ваших нужд.


  Сведения об ответе

crush

18:03, 1st July, 2020

Я привел небольшой пример тестирования .net lib с использованием ironRuby: http://khebbie.dk/post/2008/08/Example-of-using-ironRubys-mini_rspec-library.aspx


  Сведения об ответе

prince

18:03, 1st July, 2020

Это действительно личное мнение с моей стороны (я думаю, что это излишне, так как это форум). NUnit, MSTest, ЭСТ все делают довольно мутные одно и то же. Однако я нахожу NMock незаменимым.

NMock или любой издевательский пакет-это не юнит-тестирование, но оно делает его настолько проще, что оно также может быть.


  Сведения об ответе

VERSUION

18:03, 1st July, 2020

Раньше я использовал NUnit, но перешел на MbUnit, так как у него больше возможностей. Я люблю RowTest. Это позволяет вам параметризовать ваши тесты. NUnit, однако, имеет немного лучшую поддержку инструментов. Я использую ReSharper для выполнения MbUnit тестов. У меня были проблемы с TestDriven.NET запуском моих методов SetUp для MbUnit.


  Сведения об ответе

DO__IT

18:03, 1st July, 2020

Мне нравится MbUnit, э-э, Галлио . Самое главное для меня - это хорошая поддержка инструментов внутри Visual Studio. Для этого я использую Resharper, который имеет тестовый раннер MbUnit . Похоже, что многим людям нравится TestDriven.NET как их тестовый бегун.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться